Exemplo 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
Exemplo n.º 2
0
    def test_parsing(self):
        groups = parse_groups('645279:258557  ,258645\n  645279:258600,258567  \n645271 :258627  ,258694,249953')
        expected = frozenset([
            Group(subject=Subject(id=645279), participants=frozenset([Person(id=258557), Person(id=258645)])),
            Group(subject=Subject(id=645279), participants=frozenset([Person(id=258600), Person(id=258567)])),
            Group(subject=Subject(id=645271),
                  participants=frozenset([Person(id=258627), Person(id=258694), Person(id=249953)]))
        ])
        self.assertEquals(groups, expected)

        if __name__ == '__main__':
            unittest.main()