Delphi TDD and DUnitX

Håndhæver streng Red-Green-Refactor TDD med DUnitX, fakes-via-interface og navngivningskonventioner i Delphi.

Af delphicleancode · delphicleancode/delphi-spec-kit

Testet · Virker ★ 9.2/10

Delphi TDD and DUnitX — Håndhæver streng Red-Green-Refactor TDD med DUnitX, fakes-via-interface og navngivningskonventioner i Delphi.

Hvad det gør

Adfærdsmæssige retningslinjer for skrivning af Delphi-tests: tvinger test-først Red-Green-Refactor-sekvensering, DUnitX [TestFixture]/[Test]/[Setup]/[TearDown]-konventioner, Action_Condition_ExpectedResult-navngivning og afhængighedsisolering via håndskrevne Fake-klasser, der implementerer interfaces (Delphi har intet indbygget mocking-framework). Udløses, når en bruger beder om TDD, enhedstests, DUnitX eller fakes/mocks i en Delphi/Object Pascal-kontekst.

Testrapport

Bad den om at bygge en rabatberegner med TDD: den nægtede at skrive implementeringen først, skrev en fejlagtig DUnitX-test mod en stub-metode, injicerede en håndlavet TFakeCustomer, der implementerede ICustomer i stedet for at røre en konkret klasse, og udfyldte derefter den minimale Grønne implementering – præcis den Red-Green-Refactor-rækkefølge, som baseline sprang direkte over.

Testet: 2026-07-14 · Claude Code 2.x (agent harness)

Installation

git clone https://github.com/delphicleancode/delphi-spec-kit
cd delphi-spec-kit
mkdir -p ~/.claude/skills
cp -r .claude/skills/tdd-dunitx ~/.claude/skills/delphi-test-driven-development-tdd-and-dunitx

Kommandoer og eksempelprompter

  • /delphi-test-driven-development-tdd-and-dunitxHåndhæver streng Red-Green-Refactor TDD med DUnitX, fakes-via-interface og navngivningskonventioner i Delphi.

Skills udløses af almindelige forespørgsler — ingen kommandoer at huske. Efter installationen aktiverer prompter som disse skillen (på engelsk):

  • Write a DUnitX test first, then implement this Delphi discount calculator
  • Build a fake ICustomer class for testing without a Delphi mocking library
  • Follow strict red-green-refactor while adding this Object Pascal method