Added solution for "Day 17: Clumsy Crucible", part 2

This commit is contained in:
2024-06-25 22:22:52 +02:00
parent ba1cefc371
commit 7b33e8b406
2 changed files with 298 additions and 139 deletions

View File

@@ -33,6 +33,22 @@ type
function CreateSolver: ISolver; override;
published
procedure TestPart1;
procedure TestPart2;
end;
{ TExample2ClumsyCrucible }
TExample2ClumsyCrucible = class(TClumsyCrucible)
function GetDataFileName: string; override;
end;
{ TClumsyCrucibleExample2TestCase }
TClumsyCrucibleExample2TestCase = class(TExampleEngineBaseTest)
protected
function CreateSolver: ISolver; override;
published
procedure TestPart2;
end;
implementation
@@ -49,8 +65,33 @@ begin
AssertEquals(102, FSolver.GetResultPart1);
end;
procedure TClumsyCrucibleExampleTestCase.TestPart2;
begin
AssertEquals(94, FSolver.GetResultPart2);
end;
{ TExample2ClumsyCrucible }
function TExample2ClumsyCrucible.GetDataFileName: string;
begin
Result := 'clumsy_crucible2.txt';
end;
{ TClumsyCrucibleExample2TestCase }
function TClumsyCrucibleExample2TestCase.CreateSolver: ISolver;
begin
Result := TExample2ClumsyCrucible.Create;
end;
procedure TClumsyCrucibleExample2TestCase.TestPart2;
begin
AssertEquals(71, FSolver.GetResultPart2);
end;
initialization
RegisterTest('TClumsyCrucible', TClumsyCrucibleExampleTestCase);
RegisterTest('TClumsyCrucible', TClumsyCrucibleExample2TestCase);
end.