from django.test import TestCase from courseware import progress from mock import MagicMock class ProgessTests(TestCase): def setUp(self): self.d = dict({'duration_total': 0, 'duration_watched': 0, 'done': True, 'questions_correct': 4, 'questions_incorrect': 0, 'questions_total': 0}) self.c = progress.completion() self.c2 = progress.completion() self.c2.dict = dict({'duration_total': 0, 'duration_watched': 0, 'done': True, 'questions_correct': 2, 'questions_incorrect': 1, 'questions_total': 0}) self.cplusc2 = dict({'duration_total': 0, 'duration_watched': 0, 'done': True, 'questions_correct': 2, 'questions_incorrect': 1, 'questions_total': 0}) self.oth = dict({'duration_total': 0, 'duration_watched': 0, 'done': True, 'questions_correct': 4, 'questions_incorrect': 0, 'questions_total': 7}) self.x = MagicMock() self.x.dict = self.oth self.d_oth = {'duration_total': 0, 'duration_watched': 0, 'done': True, 'questions_correct': 4, 'questions_incorrect': 0, 'questions_total': 7} def test_getitem(self): self.assertEqual(self.c.__getitem__('duration_watched'), 0) def test_setitem(self): self.c.__setitem__('questions_correct', 4) self.assertEqual(str(self.c), str(self.d)) def test_repr(self): self.assertEqual(self.c.__repr__(), str(progress.completion()))