def RunDay9(self): c1 = Computer(DataFixture.mainDay9, True, [1]) val1 = c1.Run() print(f"Run of Day 9-1 with input 1 produces {val1}") #3533056970 c2 = Computer(DataFixture.mainDay9, True, [2]) val2 = c2.Run() print(f"Run of Day 9-2 with input 2 produces {val2}") #72852
def DoTests(self): testInputs = [ DataFixture.test1, DataFixture.test2, DataFixture.test3, DataFixture.test4, DataFixture.test5, DataFixture.test6, DataFixture.test7, ] for index, testTuple in enumerate(testInputs): print(f"Running test {index + 1}") testData = testTuple[0] testDescription = testTuple[1] testIO = testTuple[2] print(f"\t{testDescription}") for idx, inputOutputTuple in enumerate(testIO): value, output = inputOutputTuple print(f"\t\tRunning subtest {idx + 1}") c = Computer(testData, True, [value]) result = c.Run() print(f"\t\t\tTest produced {result} with expected {output}") assert (result == output) self.RunAmplifierTests() self.RunAmplifierFeedbackTests()
def RunAmplifierSetup(self, programData, settings): nextInput = 0 output = None assert (len(settings) == 5) for index, setting in enumerate(settings): c = Computer(programData, True, [setting, nextInput]) nextInput = c.Run() output = nextInput return output
def DoTests(self): testInputs = [ DataFixture.test1, DataFixture.test2, DataFixture.test3, DataFixture.test4, DataFixture.test5, DataFixture.test6, DataFixture.test7, DataFixture.testData2Day9, DataFixture.testData3Day9, DataFixture.testData1Day9, ] for index, testTuple in enumerate(testInputs): print(f"Running test {index + 1}") testData = testTuple[0] testDescription = testTuple[1] testIO = testTuple[2] print(f"\t{testDescription}") for idx, inputOutputTuple in enumerate(testIO): value, output = inputOutputTuple print(f"\t\tRunning subtest {idx + 1}") c = Computer(testData, True, None if value is None else [value]) result = c.Run() if (not isinstance(output, list)): print( f"\t\t\tTest produced {result} with expected {output}") assert (result == output) else: print( f"\t\t\tTest produced {c._outputs} with expected {output}" ) assert (c._outputs == output) self.RunAmplifierTests() self.RunAmplifierFeedbackTests()