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

import unittest

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

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

[docs]@freeze_time ('2012-01-14') class ExamEditTests (unittest.TestCase):
[docs] def setUp (self): """ Setup method which runs before each test case. """ self.ExamCover = namedtuple ('ExamCover', 'primary_sitting_id primary_start_time master_approved') self.ExamSeat = namedtuple ('ExamSeat', 'sequence_assigned')
[docs] def test_exam_may_edit_cover_can_edit_1 (self): """ Tests exam_may_edit_cover () for case 1 where it can be edited. """ exam = self.ExamCover (primary_sitting_id=None, primary_start_time=datetime (2012, 1, 13), master_approved=None) self.assertTrue (exam_may_edit_cover (exam))
[docs] def test_exam_may_edit_cover_can_edit_2 (self): """ Tests exam_may_edit_cover () for case 2 where it can be edited. """ exam = self.ExamCover (primary_sitting_id='primary_sitting_id', primary_start_time=datetime (2012, 1, 15), master_approved=None) self.assertTrue (exam_may_edit_cover (exam))
[docs] def test_exam_may_edit_cover_can_edit_3 (self): """ Tests exam_may_edit_cover () for case 3 where it can be edited. """ exam = self.ExamCover (primary_sitting_id='primary_sitting_id', primary_start_time=None, master_approved=None) self.assertTrue (exam_may_edit_cover (exam))
[docs] def test_exam_may_edit_cover_cannot_edit_1 (self): """ Tests exam_may_edit_cover () for case 1 where it can't be edited. """ exam = self.ExamCover (primary_sitting_id='primary_sitting_id', primary_start_time=datetime (2012, 1, 13), master_approved=None) self.assertFalse (exam_may_edit_cover (exam))
[docs] def test_exam_may_edit_cover_cannot_edit_2 (self): """ Tests exam_may_edit_cover () for case 2 where it can't be edited. """ exam = self.ExamCover (primary_sitting_id='primary_sitting_id', primary_start_time=datetime (2012, 1, 13), master_approved='master_approved') self.assertFalse (exam_may_edit_cover (exam))
[docs] def test_exam_may_edit_seat_sequence_assigned_is_none (self): """ Tests exam_may_edit_seat () given sequence_assigned is None. """ exam = self.ExamSeat (None) self.assertTrue (exam_may_edit_seat (exam))
[docs] def test_exam_may_edit_seat_sequence_assigned_not_none (self): """ Tests exam_may_edit_seat () given sequence_assigned is not None. """ exam = self.ExamSeat (sequence_assigned='sequence_assigned') self.assertFalse (exam_may_edit_seat (exam))