def test_solve_puzzle(self): puzzle = create_puzzle(self.puzzle_lines) puzzle = solve_puzzle(puzzle) self.assertEquals(puzzle[0,0][0], "4") self.assertEquals(puzzle[0,1][0], "8") self.assertEquals(puzzle[0,2][0], "3") self.assertEquals(puzzle[8,8][0], "2")
def test_validate_solved_puzzle(self): puzzle = create_puzzle(self.puzzle_lines) puzzle = solve_puzzle(puzzle) self.assertTrue(validate_solved_puzzle(puzzle)) puzzle[0, 0][0] = "0" try: validate_solved_puzzle(puzzle) self.fail("ValueError for 0 not raised") except: pass puzzle[0, 0][0] = "3" try: validate_solved_puzzle(puzzle) self.fail("ValueError for duplicate not raised") except: pass
def test_is_puzzle_solved(self): puzzle = create_puzzle(self.puzzle_lines) puzzle = solve_puzzle(puzzle) self.assertTrue(is_puzzle_solved(puzzle)) puzzle[0, 0][0] = "0" self.assertFalse(is_puzzle_solved(puzzle))
def test_get_puzzle_value(self): puzzle = create_puzzle(self.puzzle_lines) puzzle = solve_puzzle(puzzle) self.assertEquals(483, get_puzzle_value(puzzle))