def setUp(self): self.visitor = SubmitsOverTestCasesNumbers()
class SubmitsOverCasesTest(unittest.TestCase): def setUp(self): self.visitor = SubmitsOverTestCasesNumbers() def test_init(self): self.assertFalse(self.visitor.get_stat_data()) self.assertFalse(self.visitor.pretty_print()) def test_visit(self): self.visitor.visit(Mock(problem_id=('1', '2'), runs=[0] * 5)) self.visitor.visit(Mock(problem_id=('1', '3'), runs=[0] * 15)) self.visitor.visit(Mock(problem_id=('1', '1'), runs=[0] * 5)) self.visitor.visit(Mock(problem_id=('1', '1'), runs=[0] * 5)) self.visitor.visit(Mock(problem_id=('1', '1'), runs=[0] * 10)) self.assertEqual(self.visitor.get_stat_data(), {('1', '3'): {15: 1}, ('1', '1'): {10: 1, 5: 2}, ('1', '2'): {5: 1}}) res = self.visitor.pretty_print().strip().splitlines() good = ["-------------", "Problem #1", "-------------", " 10 ################################################## 1", " 5 #################################################################################################### 2", "-------------", "Problem #2", "-------------", " 5 #################################################################################################### 1", "-------------", "Problem #3", "-------------", " 15 #################################################################################################### 1"] self.assertEqual(res, good) def test_sort(self): self.visitor.visit(Mock(problem_id=('1', '2'), runs=[0])) self.visitor.visit(Mock(problem_id=('1', '10'), runs=[0])) res = self.visitor.pretty_print().strip().splitlines() good = ['-------------', 'Problem #2', '-------------', ' 1 #################################################################################################### 1', '-------------', 'Problem #10', '-------------', ' 1 #################################################################################################### 1'] self.assertEqual(res, good) def test_sort(self): self.visitor.visit(Mock(problem_id=('1', '2'), runs=[0])) self.visitor.visit(Mock(problem_id=('1', '10'), runs=[0])) self.visitor.visit(Mock(problem_id=('1', 'a'), runs=[0])) res = self.visitor.pretty_print().strip().splitlines() good = ['-------------', 'Problem #10', '-------------', ' 1 #################################################################################################### 1', '-------------', 'Problem #2', '-------------', ' 1 #################################################################################################### 1', '-------------', 'Problem #a', '-------------', ' 1 #################################################################################################### 1'] self.assertEqual(res, good)