def handle(self, *args, **options): with transaction.commit_on_success(): semesters = Semester.objects.all() if not options.get('all', False): semesters = semesters[:1] for semester in semesters: print "Computing conflicts for %d-%d..." % (semester.year, semester.month) models.cache_conflicts(semester=semester, sql=options.get('sql'))
def compute_conflicts(all_semesters=False, sql=True): with transaction.atomic(): semesters = Semester.objects.all() if not all_semesters: semesters = semesters[:1] for semester in semesters: print "Computing conflicts for %d-%d..." % (semester.year, semester.month) models.cache_conflicts(semester=semester, sql=sql)
def handle(self, *args, **options): with transaction.atomic(): semesters = Semester.objects.all() if not options.get('all', False): semesters = semesters[:1] for semester in semesters: print "Computing conflicts for %d-%d..." % (semester.year, semester.month) models.cache_conflicts(semester=semester, sql=options.get('sql'))
def setUp(self): self.semester = SemesterFactory.create(year=2011, month=1) self.course1 = CourseFactory.create(id=1, min_credits=4, max_credits=4) OfferedForFactory.create(course=self.course1, semester=self.semester) self.course2 = CourseFactory.create(id=2, min_credits=4, max_credits=4) OfferedForFactory.create(course=self.course2, semester=self.semester) self.periods = create_periods( ((10, 0), (11, 50), models.Period.MONDAY | models.Period.THURSDAY), # 0 ((10, 0), (10, 50), models.Period.MONDAY | models.Period.THURSDAY), # 1 ((11, 0), (11, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 2 ((12, 0), (13, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 3 ((14, 0), (16, 50), models.Period.WEDNESDAY), # 4 ((10, 0), (10, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 5 ((10, 0), (11, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 6 ) # conflicts: (0, 1), (2, 3), (5, 6) self.section1 = create_section( id=1, course=self.course1, crn=1000, number=1, seats_taken=3, seats_total=10, semester=self.semester, periods=[ dict(period=self.periods[0], semester=self.semester), dict(period=self.periods[4], semester=self.semester), ], ) self.section2 = create_section( id=2, course=self.course1, crn=1001, number=2, seats_taken=4, seats_total=5, semester=self.semester, periods=[ dict(period=self.periods[1], semester=self.semester), ], ) self.section3 = create_section( id=3, course=self.course2, crn=1002, number=1, seats_taken=4, seats_total=6, semester=self.semester, periods=[ dict(period=self.periods[4], semester=self.semester), ], ) self.section4 = create_section( id=4, course=self.course2, crn=1003, number=2, seats_taken=7, seats_total=6, semester=self.semester, periods=[ dict(period=self.periods[5], semester=self.semester), ] ) cache_conflicts(semester=self.semester)
def setUp(self): self.semester = SemesterFactory.create(year=2011, month=1) self.course1 = CourseFactory.create(id=1, min_credits=4, max_credits=4) OfferedForFactory.create(course=self.course1, semester=self.semester) self.course2 = CourseFactory.create(id=2, min_credits=4, max_credits=4) OfferedForFactory.create(course=self.course2, semester=self.semester) self.periods = create_periods( ((10, 0), (11, 50), models.Period.MONDAY | models.Period.THURSDAY), # 0 ((10, 0), (10, 50), models.Period.MONDAY | models.Period.THURSDAY), # 1 ((11, 0), (11, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 2 ((12, 0), (13, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 3 ((14, 0), (16, 50), models.Period.WEDNESDAY), # 4 ((10, 0), (10, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 5 ((10, 0), (11, 50), models.Period.TUESDAY | models.Period.FRIDAY), # 6 ) # conflicts: (0, 1), (2, 3), (5, 6) self.section1 = create_section( id=1, course=self.course1, crn=1000, number=1, seats_taken=3, seats_total=10, semester=self.semester, periods=[ dict(period=self.periods[0], semester=self.semester), dict(period=self.periods[4], semester=self.semester), ], ) self.section2 = create_section( id=2, course=self.course1, crn=1001, number=2, seats_taken=4, seats_total=5, semester=self.semester, periods=[ dict(period=self.periods[1], semester=self.semester), ], ) self.section3 = create_section( id=3, course=self.course2, crn=1002, number=1, seats_taken=4, seats_total=6, semester=self.semester, periods=[ dict(period=self.periods[4], semester=self.semester), ], ) self.section4 = create_section(id=4, course=self.course2, crn=1003, number=2, seats_taken=7, seats_total=6, semester=self.semester, periods=[ dict(period=self.periods[5], semester=self.semester), ]) cache_conflicts(semester=self.semester)