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)
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)
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')
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')
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'))
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)
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)
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')
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)
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)
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))
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')
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")
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)
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)
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')
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'))
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)
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)
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)
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'))