Exemplo n.º 1
0
    def test_enrollments(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            user = PWS().get_person_by_netid('javerage')

            csv = Collector()
            self.assertEquals(len(csv.enrollments), 0)
            self.assertEquals(csv.add(EnrollmentCSV(section_id='abc', person=user,
                role='Student', status='active')), True)
            self.assertEquals(len(csv.enrollments), 1)

            section = get_section_by_label('2013,winter,DROP_T,100/B')

            for registration in get_all_registrations_by_section(section):
                self.assertEquals(csv.add(EnrollmentCSV(registration=registration)), True)

            section = get_section_by_label('2013,spring,TRAIN,101/A')

            for user in section.get_instructors():
                self.assertEquals(csv.add(EnrollmentCSV(section=section,
                    instructor=user, status='active')), True)

            self.assertEquals(len(csv.enrollments), 4)
            self.assertEquals(csv.has_data(), True)
Exemplo n.º 2
0
    def test_enrollments(self):
        user = PWS().get_person_by_netid('javerage')

        csv = Collector()
        self.assertEquals(len(csv.enrollments), 0)
        self.assertEquals(
            csv.add(
                EnrollmentCSV(section_id='abc',
                              person=user,
                              role='Student',
                              status='active')), True)
        self.assertEquals(len(csv.enrollments), 1)

        section = get_section_by_label('2013,winter,DROP_T,100/B')
        for registration in get_registrations_by_section(section):
            self.assertEquals(
                csv.add(EnrollmentCSV(registration=registration)), True)
        self.assertEquals(len(csv.enrollments), 3)

        section = get_section_by_label('2013,spring,TRAIN,101/A')
        for user in section.get_instructors():
            self.assertEquals(
                csv.add(
                    EnrollmentCSV(section=section,
                                  instructor=user,
                                  status='active')), True)

            # Duplicate
            self.assertEquals(
                csv.add(
                    EnrollmentCSV(section=section,
                                  instructor=user,
                                  status='active')), False)

        self.assertEquals(len(csv.enrollments), 5)
        self.assertEquals(csv.has_data(), True)

        # Ad-hoc enrollment
        self.assertEquals(
            csv.add(
                EnrollmentCSV(course_id='course_123',
                              section_id='section_123',
                              person=user,
                              role='Observer',
                              status='active')), True)
        self.assertEquals(len(csv.enrollments), 6)

        # Duplicate
        self.assertEquals(
            csv.add(
                EnrollmentCSV(course_id='course_123',
                              section_id='section_123',
                              person=user,
                              role='Observer',
                              status='active')), False)
Exemplo n.º 3
0
    def test_status_from_registration(self):
        section = get_section_by_label('2013,winter,DROP_T,100/B')

        reg = Registration(section=section, is_active=True)
        self.assertEquals(enrollment_status_from_registration(reg), 'active')

        reg = Registration(section=section,
                           is_active=False,
                           request_date=section.term.last_day_instruction)
        self.assertEquals(enrollment_status_from_registration(reg), 'inactive')

        reg = Registration(section=section,
                           is_active=False,
                           request_status='Added to Standby')
        self.assertEquals(enrollment_status_from_registration(reg), 'active')

        reg = Registration(section=section,
                           is_active=False,
                           request_status='PENDING ADDED TO CLASS')
        self.assertEquals(enrollment_status_from_registration(reg), 'active')

        # request_date equals term.first_day_quarter
        reg = Registration(section=section,
                           is_active=False,
                           request_date=section.term.first_day_quarter)
        self.assertEquals(enrollment_status_from_registration(reg), 'deleted')

        # request_date equals term.census_day
        reg = Registration(section=section,
                           is_active=False,
                           request_date=section.term.census_day)
        self.assertEquals(enrollment_status_from_registration(reg), 'deleted')
Exemplo n.º 4
0
    def test_with_section(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,spring,TRAIN,101/A')

            self.assertEquals(str(SectionCSV(section=section)), '2013-spring-TRAIN-101-A--,2013-spring-TRAIN-101-A,TRAIN 101 A,active,,\n')
Exemplo n.º 5
0
    def test_with_section(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')
        self.assertRaises(AccountPolicyException, CourseCSV, section=section)

        section.course_campus = 'PCE'
        self.assertEquals(
            str(CourseCSV(section=section)),
            ('2013-spring-TRAIN-101-A,TRAIN 101 A,TRAIN 101 A Sp 13: '
             'Intro Train,pce_none_account,2013-spring,active,,\n'))
Exemplo n.º 6
0
    def test_student_enrollment_csv(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,winter,DROP_T,100/B')

            for registration in get_all_registrations_by_section(section):
                self.assertEquals(str(EnrollmentCSV(registration=registration)), ',,%s,Student,,2013-winter-DROP_T-100-B--,active,\n' % registration.person.uwregid)
Exemplo n.º 7
0
    def test_instructor_enrollment_csv(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,spring,TRAIN,101/A')

            for user in section.get_instructors():
                self.assertEquals(str(EnrollmentCSV(section=section, instructor=user, status='active')), ',,%s,Teacher,,2013-spring-TRAIN-101-A--,active,\n' % user.uwregid)
Exemplo n.º 8
0
    def test_term_csv(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,summer,TRAIN,101/A')

            self.assertEquals(str(TermCSV(section, 'active')), '2013-summer,Summer 2013,active,2013-06-24T00:00:00-0800,2013-08-28T00:00:00-0800\n')
            self.assertEquals(str(TermCSV(section, 'deleted')), '2013-summer,Summer 2013,deleted,2013-06-24T00:00:00-0800,2013-08-28T00:00:00-0800\n')
            self.assertEquals(str(TermCSV(section)), '2013-summer,Summer 2013,active,2013-06-24T00:00:00-0800,2013-08-28T00:00:00-0800\n')
Exemplo n.º 9
0
    def test_terms(self):
        section = get_section_by_label('2013,summer,TRAIN,101/A')
        formatter = TermCSV(section)

        csv = Collector()
        self.assertEquals(len(csv.terms), 0)
        self.assertEquals(csv.add(formatter), True)
        self.assertEquals(len(csv.terms), 1)
        self.assertEquals(csv.add(formatter), False)
        self.assertEquals(csv.has_data(), True)
Exemplo n.º 10
0
    def test_courses(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')
        section.course_campus = 'PCE'
        formatter = CourseCSV(section=section)

        csv = Collector()
        self.assertEquals(len(csv.courses), 0)
        self.assertEquals(csv.add(formatter), True)
        self.assertEquals(len(csv.courses), 1)
        self.assertEquals(csv.add(formatter), False)
        self.assertEquals(csv.has_data(), True)
Exemplo n.º 11
0
    def test_instructor_enrollment_csv(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')

        for user in section.get_instructors():
            self.assertEquals(
                str(
                    EnrollmentCSV(section=section,
                                  instructor=user,
                                  status='active')),
                ',,{},teacher,,2013-spring-TRAIN-101-A--,active,\n'.format(
                    user.uwregid))
Exemplo n.º 12
0
    def test_with_section(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File',
                LMS_OWNERSHIP_SUBACCOUNT={'PCE_NONE': 'pce_none_account'}):

            section = get_section_by_label('2013,spring,TRAIN,101/A')
            self.assertRaises(CoursePolicyException, CourseCSV, section=section)

            section.course_campus = 'PCE'
            self.assertEquals(str(CourseCSV(section=section)), '2013-spring-TRAIN-101-A,TRAIN 101 A,TRAIN 101 A: Intro Train,pce_none_account,2013-spring,active,,\n')
Exemplo n.º 13
0
    def test_term_name(self):
        with self.settings(
            RESTCLIENTS_SWS_DAO_CLASS="restclients.dao_implementation.sws.File",
            RESTCLIENTS_PWS_DAO_CLASS="restclients.dao_implementation.pws.File",
            UWEO_INDIVIDUAL_START_TERM_NAME="TEST",
        ):

            section = get_section_by_label("2013,spring,TRAIN,101/A")

            self.assertEquals(term_name(section), "Spring 2013")

            section.is_independent_start = True
            self.assertEquals(term_name(section), "TEST")
Exemplo n.º 14
0
    def test_term_end_date(self):
        with self.settings(
            RESTCLIENTS_SWS_DAO_CLASS="restclients.dao_implementation.sws.File",
            RESTCLIENTS_PWS_DAO_CLASS="restclients.dao_implementation.pws.File",
        ):

            section = get_section_by_label("2013,summer,TRAIN,101/A")

            section.is_independent_start = False
            self.assertEquals(term_end_date(section), "2013-08-28T00:00:00-0800")

            section.is_independent_start = True
            self.assertEquals(term_end_date(section), None)
Exemplo n.º 15
0
    def test_terms(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,summer,TRAIN,101/A')
            formatter = TermCSV(section)

            csv = Collector()
            self.assertEquals(len(csv.terms), 0)
            self.assertEquals(csv.add(formatter), True)
            self.assertEquals(len(csv.terms), 1)
            self.assertEquals(csv.add(formatter), False)
            self.assertEquals(csv.has_data(), True)
Exemplo n.º 16
0
    def test_term_csv(self):
        section = get_section_by_label('2013,summer,TRAIN,101/A')

        self.assertEquals(
            str(TermCSV(section, 'active')),
            ('2013-summer,Summer 2013,active,2013-06-24T00:00:00-0800,'
             '2013-08-28T00:00:00-0800\n'))
        self.assertEquals(
            str(TermCSV(section, 'deleted')),
            ('2013-summer,Summer 2013,deleted,2013-06-24T00:00:00-0800,'
             '2013-08-28T00:00:00-0800\n'))
        self.assertEquals(
            str(TermCSV(section)),
            ('2013-summer,Summer 2013,active,2013-06-24T00:00:00-0800,'
             '2013-08-28T00:00:00-0800\n'))
    def test_account_id_for_section(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')

        section.lms_ownership = 'Seattle'
        section.lms_ownership = None
        self.assertRaises(AccountPolicyException, account_id_for_section,
                          section)

        section.course_campus = 'PCE'
        self.assertEquals(account_id_for_section(section),
                          'uwcourse:uweo:noncredit-campus-managed')

        section.lms_ownership = 'PCE_OL'
        self.assertEquals(account_id_for_section(section),
                          'uwcourse:uweo:ol-managed')
Exemplo n.º 18
0
    def test_student_enrollment_csv(self):
        section = get_section_by_label('2013,winter,DROP_T,100/B')

        registrations = get_registrations_by_section(section)

        self.assertEquals(len(registrations), 2)

        reg0 = registrations[0]
        reg1 = registrations[1]

        self.assertEquals(str(EnrollmentCSV(registration=reg0)),
                          (',,260A0DEC95CB11D78BAA000629C31437,student,,'
                           '2013-winter-DROP_T-100-B--,active,\n'))
        self.assertEquals(str(EnrollmentCSV(registration=reg1)),
                          (',,9136CCB8F66711D5BE060004AC494FFE,student,,'
                           '2013-winter-DROP_T-100-B--,active,\n'))
Exemplo n.º 19
0
    def test_courses(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File',
                LMS_OWNERSHIP_SUBACCOUNT={'PCE_NONE': 'pce_none_account'}):

            section = get_section_by_label('2013,spring,TRAIN,101/A')
            section.course_campus = 'PCE'
            formatter = CourseCSV(section=section)

            csv = Collector()
            self.assertEquals(len(csv.courses), 0)
            self.assertEquals(csv.add(formatter), True)
            self.assertEquals(len(csv.courses), 1)
            self.assertEquals(csv.add(formatter), False)
            self.assertEquals(csv.has_data(), True)
Exemplo n.º 20
0
    def test_sections(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')
        formatter = SectionCSV(section=section)

        csv = Collector()
        self.assertEquals(len(csv.sections), 0)
        self.assertEquals(csv.add(formatter), True)
        self.assertEquals(len(csv.sections), 1)
        self.assertEquals(csv.add(formatter), False)
        self.assertEquals(
            csv.add(
                SectionCSV(section_id='abc',
                           course_id='abc',
                           name='abc',
                           status='active')), True)
        self.assertEquals(len(csv.sections), 2)
        self.assertEquals(csv.has_data(), True)
Exemplo n.º 21
0
    def test_sections(self):
        with self.settings(
                RESTCLIENTS_SWS_DAO_CLASS='restclients.dao_implementation.sws.File',
                RESTCLIENTS_PWS_DAO_CLASS='restclients.dao_implementation.pws.File'):

            section = get_section_by_label('2013,spring,TRAIN,101/A')
            formatter = SectionCSV(section=section)

            csv = Collector()
            self.assertEquals(len(csv.sections), 0)
            self.assertEquals(csv.add(formatter), True)
            self.assertEquals(len(csv.sections), 1)
            self.assertEquals(csv.add(formatter), False)
            self.assertEquals(csv.add(SectionCSV(section_id='abc', course_id='abc',
                name='abc', status='active')), True)
            self.assertEquals(len(csv.sections), 2)
            self.assertEquals(csv.has_data(), True)
Exemplo n.º 22
0
    def test_with_section(self):
        section = get_section_by_label('2013,spring,TRAIN,101/A')

        self.assertEquals(str(SectionCSV(section=section)),
                          ('2013-spring-TRAIN-101-A--,2013-spring-TRAIN-101-A,'
                           'TRAIN 101 A,active,,\n'))