Esempio n. 1
0
 def setUp(self):
     gedcom_parser = Parser()
     file_path = 'tests/files/Musterstammbaum.ged'
     gedcom_parser.parse_file(file_path)
     self.parser = gedcom_parser
     self.root = gedcom_parser.get_root_element()
     self.child_elements = gedcom_parser.get_root_child_elements()
Esempio n. 2
0
    def test_gen_file(self):
        user = User(username="******")
        user.save()
        tree = Tree(title="Test", creator=user)
        tree.save()
        spouse_1_legal_name = LegalName(first_name="Betty", tree=tree)
        spouse_1_legal_name.save()
        spouse_1 = Person(legal_name=spouse_1_legal_name,
                          gender='Female',
                          tree=tree)
        spouse_1.save()
        spouse_2_legal_name = LegalName(first_name="Kyle", tree=tree)
        spouse_2_legal_name.save()
        spouse_2 = Person(legal_name=spouse_2_legal_name,
                          gender='Male',
                          tree=tree)
        spouse_2.save()
        child_legal_name = LegalName(first_name="Symphony", tree=tree)
        child_legal_name.save()
        child = Person(legal_name=child_legal_name,
                       gender="Unknown",
                       tree=tree)
        child.save()
        marriage_date = datetime.datetime(2000, 12, 1)
        divorce_date = datetime.datetime(2100, 12, 2)
        partnership = Partnership(
            marriage_date=marriage_date,
            divorce_date=divorce_date,
            marital_status=Partnership.MaritalStatus.MARRIED,
            tree=tree)
        partnership.save()
        partnership.children.add(child)
        partnership.save()
        person_partnership_1 = PersonPartnership(person=spouse_1,
                                                 partnership=partnership)
        person_partnership_1.save()
        person_partnership_2 = PersonPartnership(person=spouse_2,
                                                 partnership=partnership)
        person_partnership_2.save()

        root = gedcom_generator.generate_file(tree)

        parser = Parser()
        parser.parse([])
        expected = parser.get_root_element()
        head_element, submitter_element = gedcom_generator.gen_head_and_submitter(
            tree)
        expected.add_child_element(head_element)
        expected.add_child_element(submitter_element)
        ptr, spouse_1_element = gedcom_generator.gen_individual(spouse_1)
        expected.add_child_element(spouse_1_element)
        ptr, spouse_2_element = gedcom_generator.gen_individual(spouse_2)
        expected.add_child_element(spouse_2_element)
        ptr, child_element = gedcom_generator.gen_individual(child)
        expected.add_child_element(child_element)
        ptr, family = gedcom_generator.gen_family(partnership)
        expected.add_child_element(family)

        self.assertTrue(gedcom_helpers.element_equals(root, expected))
Esempio n. 3
0
def test_get_root_element():
    parser = Parser()
    assert isinstance(parser.get_root_element(), RootElement)
Esempio n. 4
0
def get_root_element(f):
    parser = Parser()
    parser.parse(f, strict=False)
    root = parser.get_root_element()
    return root