def department_avg(department=None): storage = StaticStorage() departments = storage.list_departments() # list all departments # departments = storage.list_courses('27') avg = {} for department in departments: grade_sum = 0 n = 0 print department for course in department.courses: # NB department.courses is not writting now print course.code if course_avg(course) == None: # print course_avg(course) pass else: grade_sum += course_avg(course) n += 1 avg[department.code] = grade_sum / n return avg
def department_avg(department=None): storage = StaticStorage() departments = storage.list_departments() # list all departments #departments = storage.list_courses('27') avg = {} for department in departments: grade_sum = 0 n = 0 #print department for course in department.courses: # NB department.courses is not writting now #print course.code if course_avg(course) == None: #print course.code, course_avg(course) # FOR DEVELOPMENT, good for finding strange courses. # These courses might be new courses without any grade history pass else: grade_sum += course_avg(course) n += 1 #print "grade_sum = {}, n = {}".format(grade_sum,n) # FOR DEVELOPMENT avg[department.code] = float(grade_sum)/n # remember to make return avg
def get_deparment_timeseries_data(): department_timeseries_data = {} storage = StaticStorage() departments = storage.list_departments() # list all departments for department in departments(): department_timeseries_data[department.code] = department_all_years_avgs(department) #saving avg list
class StorageTest(unittest.TestCase): maxDiff = None def setUp(self): data_file = os.path.join(data_dir(), 'test_courses.json') self.test_object = StaticStorage(data_file) def test_list_departments(self): expected_deps = set([Department('27', 'Department of Systems Biology', None), Department('11', 'Department of Civil Engineering', None)]) departments = set(self.test_object.list_departments()) self.assertEqual(expected_deps, departments) def test_list_all_courses(self): actual_courses = self.test_object.list_all_courses() self.assertEqual(COURSES, actual_courses) def test_find_department_by_code(self): expected = Department('11', 'Department of Civil Engineering', None) department= self.test_object.find_department_by_code('11') self.assertEqual(expected, department) @unittest.skip("TODO") def test_empty_storage(self): courses = self.test_object.list_all_courses() update_date = self.test_object.last_update_date() self.assertEqual(None, courses) self.assertEqual(None, update_date) @unittest.skip("not required ATM") def test_basic_storage_date(self): self.test_object.store_course_base(self.EXAMPLE_JSON) update_date = self.test_object.last_update_date() expected_date = datetime.date.today() self.assertEqual(expected_date, update_date, "Date is not today's date.") @unittest.skip("not required ATM") def test_basic_store_read(self): self.test_object.store_course_base(self.EXAMPLE_JSON) courses = self.test_object.list_all_courses() expected_courses = datetime.date.today() self.assertEqual(courses, expected_courses, 'Courses read are not the same as courses stored')
def setUp(self): data_file = os.path.join(data_dir(), 'test_courses.json') self.test_object = StaticStorage(data_file)