def test_known_clues(self): with CrypticClueSolver() as solver: for clue_text in open('clues/known_clues.txt', 'r').readlines(): phrases, lengths, pattern, known_answer = split_clue_text(clue_text) solver.setup(clue_text) answers = solver.run() for a in answers[:5]: print a self.assertEqual(answers[0].answer.lower(), known_answer.lower().strip())
def POST(self): if not form.validates(): return render.index([], "", "Sorry, something went wrong with that clue") else: phrases, lengths, pattern, answer = split_clue_text(form.d.Clue) if len(phrases) > 7: return render.index([], form.d.Clue, "Sorry, I can't reliably handle clues longer than 7 phrases yet. Try grouping some words into phrases by putting an underscore instead of a space between them") solver.setup(form.d.Clue) solver_thread = threading.Thread(target=solver.run) solver_thread.start() solver_thread.join() raise web.seeother('/')