Fix solved property
This commit is contained in:
		
							parent
							
								
									cf43b02aa9
								
							
						
					
					
						commit
						a9a01d3fd4
					
				
					 2 changed files with 8 additions and 6 deletions
				
			
		|  | @ -91,12 +91,9 @@ class Sudoku: | |||
| 
 | ||||
|     @property | ||||
|     def solved(self): | ||||
|         expected = set(range(self.size)) | ||||
|         return all([ | ||||
|             all(expected == set(row) for row in self.rows), | ||||
|             all(expected == set(col) for col in self.columns), | ||||
|             all(expected == set(sqr) for sqr in self.squares) | ||||
|         ]) | ||||
|         expected = set(range(1, self.size + 1)) | ||||
|         all_groups = itertools.chain(self.rows, self.columns, self.squares) | ||||
|         return all(expected == set(g) for g in all_groups) | ||||
| 
 | ||||
|     def _apply_index_ranges(self, ranges): | ||||
|         return ((self._board[i] for i in r) for r in ranges) | ||||
|  |  | |||
							
								
								
									
										5
									
								
								test.py
									
										
									
									
									
								
							
							
						
						
									
										5
									
								
								test.py
									
										
									
									
									
								
							|  | @ -83,3 +83,8 @@ class Sudoku4BasicTests(Sudoku4TestCase): | |||
| class Sudoku4SolvedTests(Sudoku4TestCase): | ||||
|     def test_that_an_empty_board_is_not_solved(self): | ||||
|         self.assertFalse(self.board.solved) | ||||
| 
 | ||||
|     def test_simple_solution_is_solved(self): | ||||
|         board = (int(i) for i in '1234341221434321') | ||||
|         self.board = sudoku.Sudoku(4, board) | ||||
|         self.assertTrue(self.board.solved) | ||||
|  |  | |||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue