def test_solve_answer_with_spaces(self): cw = Crossword(1, 1) cw.add_regex(1, 'A', r'\s') self.assertEqual(cw.solve(), ' ') cw = Crossword(1, 1) cw.add_regex(1, 'A', r'\W') self.assertEqual(cw.solve(), ' ') # from http://regexcrossword.com/playerpuzzles/f2a55cca-37fe-42e1-967a-56b97e1fc612 cw = Crossword(5, 3) cw.remove_from_possibility('1234567890') cw.add_regex(1, 'A', r'[PDA][PAPER]*[PD]A') cw.add_regex(2, 'A', r'R[^RA]\s(R.|.R)') cw.add_regex(3, 'A', r'\W.NU[\\S]') cw.add_regex(1, 'D', r'[O-T]{2}\s?') cw.add_regex(2, 'D', r'[^PEA][ARE]A') cw.add_regex(3, 'D', r'(HE|F\s|E\s).') cw.add_regex(4, 'D', r'[PFCG](.)\1') cw.add_regex(5, 'D', r'([CA])RS') # this solution is offensive and I do not condone it self.assertEqual(cw.solve(), 'PREPARE UR ANUS')