from unittest import TestCase import sum_product import pickle class TestSumProductPuzzle(TestCase): try: with open("sumProductObj", "rb") as obj: testInstance = pickle.load(obj) except FileNotFoundError as e: print("File Not Found! Creating new puzzle instance!") testInstance = sum_product.SumProductPuzzle() sum_product.dumpObject(testInstance) def test_cond1(self): assert self.testInstance.cond1((2, 15)) assert self.testInstance.cond1((5, 12)) assert self.testInstance.cond1((2, 15)) assert self.testInstance.cond1((8, 9)) assert self.testInstance.cond1((2, 35)) assert self.testInstance.cond1((7, 10)) assert self.testInstance.cond1((15, 22)) assert not self.testInstance.cond1((5, 60)) assert not self.testInstance.cond1((2, 12)) assert not self.testInstance.cond1((3, 6)) assert not self.testInstance.cond1((2, 23)) assert not self.testInstance.cond1((5, 7)) assert not self.testInstance.cond1((9, 21)) assert not self.testInstance.cond1((6, 10)) assert not self.testInstance.cond1((21, 31)) assert not self.testInstance.cond1((14, 54)) def test_cond2(self): assert self.testInstance.cond2((2, 9)) assert self.testInstance.cond2((3, 8)) assert not self.testInstance.cond2((2, 15)) assert not self.testInstance.cond2((5, 12)) assert not self.testInstance.cond2((8, 9)) assert not self.testInstance.cond2((2, 35)) assert not self.testInstance.cond2((7, 10)) assert not self.testInstance.cond2((15, 22)) assert not self.testInstance.cond2((5, 60)) def test_cond3(self): assert not self.testInstance.cond3((3, 8)) assert not self.testInstance.cond3((2, 9)) assert not self.testInstance.cond3((7, 58)) assert not self.testInstance.cond3((11, 54)) assert not self.testInstance.cond3((6, 47)) assert not self.testInstance.cond3((10, 43)) assert not self.testInstance.cond3((8, 29)) assert not self.testInstance.cond3((16, 21)) def test_write_as_prime(self): assert self.testInstance.writeAsPrime(9) assert self.testInstance.writeAsPrime(20) assert not self.testInstance.writeAsPrime(11) assert not self.testInstance.writeAsPrime(17) def test_get_solution(self): assert self.testInstance.getSolution() == [(4, 13)]