def setUp(self): self.examiner1 = UserBuilder('examiner1').user self.examiner2 = UserBuilder('examiner2').user self.student1 = UserBuilder('student1', full_name="Student One").user self.duck1010builder = SubjectBuilder.quickadd_ducku_duck1010() self.week1builder = self.duck1010builder.add_6month_active_period()\ .add_assignment('week1', long_name='Week 1')
def test_filter_examiner_has_access(self): otherexaminer = UserBuilder('otherexaminer').user duck1010builder = SubjectBuilder.quickadd_ducku_duck1010() activeassignmentbuilder = duck1010builder.add_6month_active_period().add_assignment('week1') activedelivery = activeassignmentbuilder\ .add_group(examiners=[self.examiner1])\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1).delivery # Add deliveries on inactive assignments and on a group with another examiner to make sure we get no false positives duck1010builder.add_6month_lastyear_period()\ .add_assignment('week1')\ .add_group(examiners=[self.examiner1])\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1) duck1010builder.add_6month_nextyear_period()\ .add_assignment('week1')\ .add_group(examiners=[self.examiner1])\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1) activeassignmentbuilder\ .add_group(examiners=[otherexaminer])\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1) qry = Delivery.objects.filter_examiner_has_access(self.examiner1) self.assertEquals(qry.count(), 1) self.assertEquals(qry[0], activedelivery) # make sure we are not getting false positives self.assertEquals(Delivery.objects.filter_is_examiner(self.examiner1).count(), 3) self.assertEquals(Delivery.objects.filter_is_examiner(otherexaminer).count(), 1)
def setUp(self): self.admin1 = UserBuilder('admin1').user self.subjectbuilder = SubjectBuilder.quickadd_ducku_duck1010() self.periodbuilder = self.subjectbuilder.add_6month_active_period() self.assignmentbuilder = self.periodbuilder.add_assignment('myassignment') self.url = reverse('devilry_gradingsystem_admin_summary', kwargs={ 'assignmentid': self.assignmentbuilder.assignment.id, })
def test_filter_is_active(self): duck1010builder = SubjectBuilder.quickadd_ducku_duck1010() activeassignmentbuilder = duck1010builder.add_6month_active_period().add_assignment('week1') # Add inactive groups to make sure we get no false positives duck1010builder.add_6month_lastyear_period().add_assignment('week1') duck1010builder.add_6month_nextyear_period().add_assignment('week1') qry = Assignment.objects.filter_is_active() self.assertEquals(qry.count(), 1) self.assertEquals(qry[0], activeassignmentbuilder.assignment)
def test_filter_examiner_has_access(self): examiner1 = UserBuilder('examiner1').user otherexaminer = UserBuilder('otherexaminer').user duck1010builder = SubjectBuilder.quickadd_ducku_duck1010() activeassignmentbuilder = duck1010builder.add_6month_active_period().add_assignment('week1') currentgroupbuilder = activeassignmentbuilder.add_group().add_examiners(examiner1) # Add inactive groups and a group with another examiner to make sure we get no false positives duck1010builder.add_6month_lastyear_period().add_assignment('week1')\ .add_group().add_examiners(examiner1) duck1010builder.add_6month_nextyear_period().add_assignment('week1')\ .add_group().add_examiners(examiner1) activeassignmentbuilder.add_group().add_examiners(otherexaminer) qry = Assignment.objects.filter_examiner_has_access(examiner1) self.assertEquals(qry.count(), 1) self.assertEquals(qry[0], activeassignmentbuilder.assignment) # make sure we are not getting false positives self.assertEquals(Assignment.objects.filter_is_examiner(examiner1).count(), 3) self.assertEquals(Assignment.objects.filter_is_examiner(otherexaminer).count(), 1)
def test_filter_is_active(self): duck1010builder = SubjectBuilder.quickadd_ducku_duck1010() activedelivery = duck1010builder.add_6month_active_period()\ .add_assignment('week1')\ .add_group()\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1).delivery # Add inactive groups to make sure we get no false positives duck1010builder.add_6month_lastyear_period()\ .add_assignment('week1')\ .add_group()\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1) duck1010builder.add_6month_nextyear_period()\ .add_assignment('week1')\ .add_group()\ .add_deadline_in_x_weeks(weeks=1)\ .add_delivery_x_hours_before_deadline(hours=1) self.assertEquals(len(Delivery.objects.all()), 3) qry = Delivery.objects.filter_is_active() self.assertEquals(qry.count(), 1) self.assertEquals(qry[0], activedelivery)