Source code for uw.local.teaching.webui.exam_scan_test

import unittest

from collections import namedtuple
from freezegun import freeze_time
from datetime import datetime

from uw.local.teaching.webui.exam_scan import *

[docs]@freeze_time ('2012-01-14') class ExamScanTests (unittest.TestCase):
[docs] def setUp (self): """ Setup method which runs before each test case. """ self.Exam = namedtuple ('Exam', 'primary_start_time')
[docs] def test_exam_may_edit_scan_can_edit_1 (self): """ Tests exam_may_edit_scan () given primary_start_time is None. """ exam = self.Exam (primary_start_time=None) self.assertTrue (exam_may_edit_scan (exam))
[docs] def test_exam_may_edit_scan_can_edit_2 (self): """ Tests exam_may_edit_scan () given the current date is before the primary start time. """ exam = self.Exam (primary_start_time=datetime (2012, 1, 15)) self.assertTrue (exam_may_edit_scan (exam))
[docs] def test_exam_may_edit_scan_cannot_edit (self): """ Tests exam_may_edit_scan () for case 1 given the current date is before the primary start time. """ exam = self.Exam (primary_start_time=datetime (2012, 1, 13)) self.assertFalse (exam_may_edit_scan (exam))