nilshoehing commited on
Commit
630c7d3
·
verified ·
1 Parent(s): 61557a0

Fix loopy submission format and pattern layout

Browse files
Files changed (1) hide show
  1. tests/test_core.py +39 -17
tests/test_core.py CHANGED
@@ -67,33 +67,55 @@ class CoreTests(unittest.TestCase):
67
  def test_loopy_normalization_marks_unclicked_edges_blocked(self) -> None:
68
  problem = "\n".join(
69
  [
70
- "+++++++",
71
- "+ +",
72
- "+ 1 +",
73
- "+ +",
74
- "+ 2 +",
75
- "+ +",
76
- "+++++++",
 
 
 
 
 
 
77
  ]
78
  )
79
  partial = "\n".join(
80
  [
81
- "+++++++",
82
- "+ - +",
83
- "+ 1 +",
84
- "+ +",
85
- "+ 2 +",
86
- "+ +",
87
- "+++++++",
 
 
 
 
 
 
88
  ]
89
  )
90
- normalized = normalize_board_for_submission(
91
  puzzle_type="loopy",
92
  problem_ascii=problem,
93
  board_ascii=partial,
94
  )
95
- self.assertIn("x", normalized)
96
- self.assertIn("-", normalized)
 
 
 
 
 
 
 
 
 
 
97
 
98
  def test_pattern_normalization_makes_unclicked_cells_white(self) -> None:
99
  board = "\n".join(
 
67
  def test_loopy_normalization_marks_unclicked_edges_blocked(self) -> None:
68
  problem = "\n".join(
69
  [
70
+ "+++++++++++++",
71
+ "+ +",
72
+ "+ 0 +",
73
+ "+ +",
74
+ "+ 2 1 3 2 +",
75
+ "+ +",
76
+ "+ 2 3 +",
77
+ "+ +",
78
+ "+ 2 2 +",
79
+ "+ +",
80
+ "+ 3 2 3 +",
81
+ "+ +",
82
+ "+++++++++++++",
83
  ]
84
  )
85
  partial = "\n".join(
86
  [
87
+ "+++++++++++++",
88
+ "+ - +",
89
+ "+ 0 +",
90
+ "+ +",
91
+ "+ 2 1 3 2 +",
92
+ "+ +",
93
+ "+ 2 3 +",
94
+ "+ +",
95
+ "+ 2 2 +",
96
+ "+ +",
97
+ "+ 3 2 3 +",
98
+ "+ +",
99
+ "+++++++++++++",
100
  ]
101
  )
102
+ normalized_submission = normalize_board_for_submission(
103
  puzzle_type="loopy",
104
  problem_ascii=problem,
105
  board_ascii=partial,
106
  )
107
+ self.assertEqual(len(normalized_submission.splitlines()), 11)
108
+ self.assertTrue(all(len(line) == 11 for line in normalized_submission.splitlines()))
109
+ self.assertIn("x", normalized_submission)
110
+ self.assertIn("-", normalized_submission)
111
+
112
+ redisplayed = normalize_board_for_display(
113
+ puzzle_type="loopy",
114
+ problem_ascii=problem,
115
+ board_ascii=normalized_submission,
116
+ )
117
+ self.assertEqual(len(redisplayed.splitlines()), 13)
118
+ self.assertIn("+", redisplayed)
119
 
120
  def test_pattern_normalization_makes_unclicked_cells_white(self) -> None:
121
  board = "\n".join(