def test_empty(self): h = HintSystem() self.assertFalse(h.has_hints()) self.assertIsNone(h.hint(self.player)) h.init([]) self.assertIsNone(h.hint(self.player)) h.checkpoint("state1") self.assertIsNone(h.hint(self.player))
def test_checkpoint(self): h = HintSystem() h.init([ Hint("start", None, "first"), Hint("state2", None, "second"), Hint("state4", None, "third"), ]) self.assertTrue(h.has_hints()) self.assertIsNone(h.hint(self.player)) h.checkpoint("start") self.assertEqual("first", h.hint(self.player)) h.checkpoint("state1") self.assertEqual("first", h.hint(self.player)) h.checkpoint("state2") self.assertEqual("second", h.hint(self.player)) h.checkpoint("state3") self.assertEqual("second", h.hint(self.player)) h.checkpoint("state4") self.assertEqual("third", h.hint(self.player))