Added solution for "Day 8: Haunted Wasteland", part 2

This commit is contained in:
2023-12-09 14:46:35 +01:00
committed by Stefan Müller
parent edf9cf3d72
commit f1b1439524
2 changed files with 97 additions and 38 deletions

View File

@@ -33,6 +33,7 @@ type
function CreateSolver: ISolver; override;
published
procedure TestPart1;
procedure TestPart2;
end;
{ THauntedWastelandExampleTestCase }
@@ -59,6 +60,21 @@ type
procedure TestPart1;
end;
{ TExample3HauntedWasteland }
TExample3HauntedWasteland = class(THauntedWasteland)
function GetDataFileName: string; override;
end;
{ THauntedWastelandExample3TestCase }
THauntedWastelandExample3TestCase = class(TExampleEngineBaseTest)
protected
function CreateSolver: ISolver; override;
published
procedure TestPart2;
end;
implementation
{ THauntedWastelandFullDataTestCase }
@@ -73,6 +89,11 @@ begin
AssertEquals(14257, FSolver.GetResultPart1);
end;
procedure THauntedWastelandFullDataTestCase.TestPart2;
begin
AssertEquals(16187743689077, FSolver.GetResultPart2);
end;
{ THauntedWastelandExampleTestCase }
function THauntedWastelandExampleTestCase.CreateSolver: ISolver;
@@ -104,9 +125,29 @@ begin
AssertEquals(6, FSolver.GetResultPart1);
end;
{ TExample3HauntedWasteland }
function TExample3HauntedWasteland.GetDataFileName: string;
begin
Result := 'haunted_wasteland3.txt';
end;
{ THauntedWastelandExample3TestCase }
function THauntedWastelandExample3TestCase.CreateSolver: ISolver;
begin
Result := TExample3HauntedWasteland.Create;
end;
procedure THauntedWastelandExample3TestCase.TestPart2;
begin
AssertEquals(6, FSolver.GetResultPart2);
end;
initialization
RegisterTest(THauntedWastelandFullDataTestCase);
RegisterTest(THauntedWastelandExampleTestCase);
RegisterTest(THauntedWastelandExample2TestCase);
RegisterTest(THauntedWastelandExample3TestCase);
end.