def test_clean_max_greater_than_min_works(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create(assignment=self.assignment), minimum_points=0, maximum_points=1, grade='D' ) pointrange_to_grade.clean() # Should work without error
def test_clean_max_greater_than_min_works(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create( assignment=self.assignment), minimum_points=0, maximum_points=1, grade='D') pointrange_to_grade.clean() # Should work without error
def test_clean_existing_does_not_match_overlapping_range(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create( assignment=self.assignment), minimum_points=12, maximum_points=18, grade='C') pointrange_to_grade.save() pointrange_to_grade.clean()
def test_clean_max_equal_to_min_works(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create( assignment=self.assignment), minimum_points=1, maximum_points=1, grade='D') with self.assertRaises(ValidationError): pointrange_to_grade.clean()
def test_clean_max_equal_to_min_works(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create(assignment=self.assignment), minimum_points=1, maximum_points=1, grade='D' ) with self.assertRaises(ValidationError): pointrange_to_grade.clean()
def test_clean_existing_does_not_match_overlapping_range(self): pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create(assignment=self.assignment), minimum_points=12, maximum_points=18, grade='C' ) pointrange_to_grade.save() pointrange_to_grade.clean()
def test_clean_overlapping_other_on_same_assignment_fails(self): point_to_grade_map = PointToGradeMap.objects.create( assignment=self.assignment) point_to_grade_map.pointrangetograde_set.create(minimum_points=10, maximum_points=20, grade='D') pointrange_to_grade = PointRangeToGrade( point_to_grade_map=point_to_grade_map, minimum_points=12, maximum_points=18, grade='C') with self.assertRaises(ValidationError): pointrange_to_grade.clean()
def test_clean_does_not_match_overlapping_range_in_other_assignments(self): assignment2 = self.periodbuilder.add_assignment( 'assignment2', max_points=100).assignment pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create( assignment=self.assignment), minimum_points=12, maximum_points=18, grade='D') PointRangeToGrade(point_to_grade_map=PointToGradeMap.objects.create( assignment=assignment2), minimum_points=10, maximum_points=20, grade='C').save() pointrange_to_grade.clean()
def test_clean_overlapping_other_on_same_assignment_fails(self): point_to_grade_map = PointToGradeMap.objects.create(assignment=self.assignment) pointrange_to_grade = point_to_grade_map.pointrangetograde_set.create( minimum_points=10, maximum_points=20, grade='D' ) pointrange_to_grade = PointRangeToGrade( point_to_grade_map=point_to_grade_map, minimum_points=12, maximum_points=18, grade='C' ) with self.assertRaises(ValidationError): pointrange_to_grade.clean()
def test_clean_does_not_match_overlapping_range_in_other_assignments(self): assignment2 = self.periodbuilder.add_assignment('assignment2').assignment pointrange_to_grade = PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create(assignment=self.assignment), minimum_points=12, maximum_points=18, grade='D' ) PointRangeToGrade( point_to_grade_map=PointToGradeMap.objects.create(assignment=assignment2), minimum_points=10, maximum_points=20, grade='C' ).save() pointrange_to_grade.clean()