def test_all_course_details_are_parsable(self): for semester in self.semesters: errors = [] xml = owlxp.fetch_catalog_xml(semester) inv = owlxp.find_courseinventory_nodes(xml) parsed = owlxp.parse_courseinventory_nodes(inv, semester) for p in parsed: try: owlxp.parse_course_details(p["subject_code"], p["number"], semester) except ScraperError as e: errors.append(e)
def test_can_create_course_from_course_dict_output(self): """ Should be able generate a dictionary that ``create_course()`` can successfully create a ``Course`` from. """ logger.info("Finding <course_inventory> nodes from '%s'..." % self.xml_filename) inv = owlxp.find_courseinventory_nodes(self.test_courses_xml) course_dict = owlxp.course_dicts_for_nodes(inv[0], Semester.objects.get(year=2013, term=Semester.SUMMER)) self.assertEqual(len(course_dict), 1) course = Course.objects.get_or_create_from_dict(course_dict[0]) logger.info("Successfully created Course model instance --> %s" % course)