예제 #1
0
def getting_started(request, year, semester_type):
    '''Intial top level page that greets users'''
    try:
        semester = Semester.objects.get(year=year, type=semester_type)
    except Semester.DoesNotExist:
        raise http.Http404

    try:
        next_semester = Semester.objects.next()
    except Semester.DoesNotExist:
        next_semester = None

    if next_semester and next_semester == semester:
        next_semester = None

    # Redirect user to their timetable
    if request.method == 'POST':
        schedule_form = forms.ScheduleForm(request.POST)

        if schedule_form.is_valid():
            slug = schedule_form.cleaned_data['slug']
            # TODO(adamcik): what should we do if current is empty?
            return schedule_current(request, semester.year, semester.type, slug)
    else:
        schedule_form = forms.ScheduleForm()

    context = Course.get_stats(semester=semester)
    context.update({
        'color_map': utils.ColorMap(hex=True),
        'current': semester,
        'next_semester': next_semester,
        'schedule_form': schedule_form,
    })
    return shortcuts.render(request, 'start.html', context)
예제 #2
0
    def test_course_get_stats(self):
        semester = Semester.objects.get(year=2009, type=Semester.SPRING)
        actual = Course.get_stats(semester)

        self.assertEquals(3, actual.pop('slug_count'))
        self.assertEquals(3, actual.pop('course_count'))
        self.assertEquals(6, actual.pop('subscription_count'))

        stats = actual.pop('stats')

        self.assertEquals((3, 2, u'COURSE2', u'Course 2 full name'), stats[0])
        self.assertEquals((2, 1, u'COURSE1', u'Course 1 full name'), stats[1])
        self.assertEquals((1, 3, u'COURSE3', u'Course 3 full name'), stats[2])
예제 #3
0
파일: models.py 프로젝트: HelleIrina/plan
    def test_course_get_stats(self):
        semester = Semester.objects.get(year=2009, type=Semester.SPRING)
        actual = Course.get_stats(semester)

        self.assertEquals(3, actual.pop('slug_count'))
        self.assertEquals(3, actual.pop('course_count'))
        self.assertEquals(6, actual.pop('subscription_count'))

        stats = actual.pop('stats')

        self.assertEquals((3, 2, u'COURSE2', u'Course 2 full name'), stats[0])
        self.assertEquals((2, 1, u'COURSE1', u'Course 1 full name'), stats[1])
        self.assertEquals((1, 3, u'COURSE3', u'Course 3 full name'), stats[2])