Esempio n. 1
0
def parse(pref_fname="preferences.txt", groups_fname="groups.txt", terms_fname="terms.txt", assign_fname="output.txt"):
    preferences = parse_preferences(open(pref_fname).read())
    assignments = parse_assignments(open(assign_fname).read())
    groups = parse_groups(open(groups_fname).read())
    subjects, terms = parse_subjects_and_terms(open(terms_fname).read())

    return Configuration(preferences, groups, subjects, terms), assignments
Esempio n. 2
0
    def test_parsing(self):
        assignments = parse_assignments('''
[258597]
645273:645342
645275:645366
[258590]
645274:645355
645275:645368''')
        self.assertEquals(assignments, frozenset([
            Assignment(person=Person(id=258597)),
            Assignment(person=Person(id=258590))
        ]))

        mapping = {assignment.person.id: assignment.subject_ids_to_term_ids for assignment in assignments}
        self.assertEquals(mapping, {
            258590: {645274: 645355, 645275: 645368},
            258597: {645273: 645342, 645275: 645366}
        })