diff --git a/test.py b/test.py --- a/test.py +++ b/test.py @@ -18,7 +18,6 @@ class TestRankTracker(TestCase): # 2+ ranks leaps # limited when pushing the personal best - # self.skipTest("not yet implemented") t = RankTracker(1100) self.assertEqual(t.update(1299), "9k") self.assertEqual(t.update(1250), "8k") @@ -31,16 +30,31 @@ class TestRankTracker(TestCase): t.update(849) # 11k self.assertEqual(t.update(1250), "8k") + def test_repeated_promotion(self): + t = RankTracker(1945) + + self.assertEqual(t.update(1950), "1k") + self.assertFalse(t.update(1895)) + self.assertEqual(t.rank, "2k") + self.assertFalse(t.update( 1951)) + self.assertEqual(t.rank, "1k") + self.assertFalse(t.update(2049)) + self.assertEqual(t.update(2051), "1d") + def test_demotion(self): t = RankTracker(2069) - self.assertEqual(t.update(1995), "1k") + self.assertFalse(t.update(1995)) # 1k + self.assertEqual(t.rank, "1k") t = RankTracker(1590) - self.assertEqual(t.update(1387), "7k") + self.assertFalse(t.update(1387)) # 7k + self.assertEqual(t.rank, "7k") t = RankTracker(1087) self.assertFalse(t.update(995)) - self.assertEqual(t.update(940), "11k") + self.assertEqual(t.rank, "10k") + self.assertFalse(t.update(940)) # 11k + self.assertEqual(t.rank, "11k") def test_edges_cases(self): t = RankTracker(-900)