コード例 #1
0
ファイル: test_us23.py プロジェクト: BenjiTheC/SSW555
 def test_same_name_birthdate(self):
     """ Two individuals have same name and birth date"""
     ged = Gedcom('./GEDCOM_files/us23/same_name_birthdate.ged')
     expected = [
         ('@I6@', '@I7@')
     ]
     self.assertEqual(ged.us23_unique_name_and_birt(debug=True), expected)
コード例 #2
0
ファイル: test_us02.py プロジェクト: BenjiTheC/SSW555
    def test_mar_before_birt(self):
        """ Marriage before birth"""

        ged = Gedcom('./GEDCOM_files/us02/us02_mar_before_birt.ged')
        self.assertEqual(ged.us02_birth_before_marriage(debug=True),
                         [('husband', '08/06/3169', '@F1@', 'Oswaldo Mccarthy',
                           '@I2@', '01/01/1992')])
コード例 #3
0
ファイル: test_us21.py プロジェクト: BenjiTheC/SSW555
 def test_wife_male_husb_female(self):
     """Wife has the gender male and husband has gender female"""
     ged = Gedcom('./GEDCOM_files/us21/test_wife_male_husb_female.ged')
     expected = [('Oswaldo Mccarthy', '@I2@', 'husband', '@F1@', 'male'),
                 ('Sherika Ault', '@I3@', 'wife', '@F1@', 'female')]
     self.assertEqual(ged.us21_correct_gender_for_role(debug=True),
                      expected)
コード例 #4
0
ファイル: test_us02.py プロジェクト: BenjiTheC/SSW555
    def test_mar_on_birt_wife(self):
        """ Marriage is on the birth date"""

        ged = Gedcom('./GEDCOM_files/us02/us02_mar_on_birt.ged')
        self.assertEqual(ged.us02_birth_before_marriage(debug=True),
                         [('wife', '04/17/1972', '@F1@', 'Sherika Ault',
                           '@I3@', '08/06/1969')])
コード例 #5
0
ファイル: test_us06.py プロジェクト: BenjiTheC/SSW555
    def test_both_die_before_divorce(self):
        """ husband and wife both die before divorce"""
        expected = [
            ('Jack Monroe', 'husband', '@F1@', '05/16/1997', '02/10/2004'),
            ('Lucy Oliver', 'wife', '@F1@', '03/02/2003', '02/10/2004')
        ]

        ged = Gedcom('./GEDCOM_files/us06/us06_both_die_b4_div.ged')
        self.assertEqual(ged.us06_divorce_before_death(debug=True), expected)
コード例 #6
0
ファイル: test_us16.py プロジェクト: BenjiTheC/SSW555
    def test_same_lastname(self):
        """ Positive test, males' last names are the same"""
        mongo_instance = MongoDB()
        mongo_instance.drop_collection("family")
        mongo_instance.drop_collection("individual")

        ged = Gedcom('./GEDCOM_files/us16/us16_male_last_name_same.ged')
        ged.insert_to_mongo()

        self.assertEqual(ged.us16_male_last_name(debug=True), [])
コード例 #7
0
ファイル: test_us16.py プロジェクト: BenjiTheC/SSW555
    def test_diff_lastname(self):
        """ Negative test, males' last names are different"""
        mongo_instance = MongoDB()
        mongo_instance.drop_collection("family")
        mongo_instance.drop_collection("individual")

        ged = Gedcom('./GEDCOM_files/us16/us16_male_last_name_diff.ged')
        ged.insert_to_mongo()

        self.assertEqual(ged.us16_male_last_name(debug=True),
                         [('@F1@', '@I2@, @I3@', 'LastName,Test')])
コード例 #8
0
 def test_niece_marr_uncle(self):
     """ test case niece marries with her uncle"""
     expected = [(
         'Ably Pedersen',
         '@I4@',
         'Molly Pedersen',
         '@I11@',
         'Gisilbert Pedersen',
         '@I6@',
     )]
     ged = Gedcom('./GEDCOM_files/us20/us20_niece_marr_uncle.ged')
     self.assertEqual(ged.us20_aunts_and_uncle(debug=True), expected)
コード例 #9
0
 def test_nephew_marr_aunt(self):
     """ test case nephew marries with his aunt"""
     expected = [(
         'Ably Pedersen',
         '@I4@',
         'Cam Pedersen',
         '@I10@',
         'Karla Pedersen',
         '@I7@',
     )]
     ged = Gedcom('./GEDCOM_files/us20/us20_nephew_marr_aunt.ged')
     self.assertEqual(ged.us20_aunts_and_uncle(debug=True), expected)
コード例 #10
0
    def test_less_than_150yr_dead(self):
        """ Test the person is less than 150 year old and alive."""
        expected = []
        res = Gedcom('GEDCOM_files/us07/us07_less_than_150yr_dead.ged'
                     ).us07_less_than_150_yrs(debug=True)

        self.assertEqual(res, expected)
コード例 #11
0
 def test_list_living_single(self):
     expected_ids = ["@I9@", "@I17@", "@I22@", "@I23@"]
     result = Gedcom('./GEDCOM_files/integrated_no_err.ged'
                     ).us31_list_living_single(debug=True)
     result_ids = []
     for indi in result:
         result_ids.append(indi.indi_id)
     self.assertEqual(result_ids, expected_ids)
コード例 #12
0
ファイル: test_us28.py プロジェクト: BenjiTheC/SSW555
 def test_diff_name_same_birt(self):
     """Sort the siblings with different names BUT same birth dates (twins)"""
     expected = {
         ('@F1@', 'Rogan'): [('@I3@', 24, 'Sataglo'), ('@I5@', 22, 'Julia'),
                             ('@I4@', 22, 'Jassica'), ('@I6@', 22, 'Jane'),
                             ('@I7@', 20, 'Slovikansky')]
     }
     self.assertEqual(
         Gedcom('./GEDCOM_files/us28/us28_diff_name_same_birth.ged').
         us28_order_siblings_by_age(debug=True), expected)
コード例 #13
0
import unittest
from datetime import datetime
from gedcom_ajry import Gedcom
# Marriage and divorce dates
gdm1 = Gedcom("./GEDCOM_files/us04/us04_divorcebeforemarriage.ged"
              )  # 8 OCT 1980 and 6 SEP 1979
gdm2 = Gedcom("./GEDCOM_files/us04/us04_divorcemarriagesamedate.ged"
              )  # 8 OCT 1980 and 8 OCT 1980
gdm3 = Gedcom("./GEDCOM_files/us04/us04_properdivorcemarriage.ged"
              )  # 8 OCT 1980 and 6 SEP 1993


class Sprint2us13_john(unittest.TestCase):
    def test_divorceb4marriage(self):
        res1 = [('@F3@')]
        self.assertCountEqual(gdm1.us04_marr_b4_div(debug=True), res1)

    def test_divorcemarriagesamedate(self):
        res2 = []
        self.assertCountEqual(gdm2.us04_marr_b4_div(debug=True), res2)

    def test_properdivorcemarriage(self):
        res3 = []
        self.assertCountEqual(gdm3.us04_marr_b4_div(debug=True), res3)


if __name__ == "__main__":
    unittest.main()
コード例 #14
0
 def test_birth_before_9_div(self):
     """ Birth of a child 9 months before the divorce"""
     ged = Gedcom('./GEDCOM_files/us08/birth_before_9_div.ged')
     self.assertEqual(ged.us08_birt_b4_marr_of_par(debug=True), [])
コード例 #15
0
 def test_birth_after_9_div(self):
     """ Birth of a child 9 months after the divorce"""
     ged = Gedcom('./GEDCOM_files/us08/birth_after_9_div.ged')
     expected = [('@F7@', '@I10@', '@I12@')]
     self.assertEqual(ged.us08_birt_b4_marr_of_par(debug=True), expected)
コード例 #16
0
 def test_birth_before_marr(self):
     """ Birth of a child before the marriage"""
     ged = Gedcom('./GEDCOM_files/us08/birth_before_marr.ged')
     expected = [('@F3@', '@I15@', '@I16@')]
     self.assertEqual(ged.us08_birt_b4_marr_of_par(debug=True), expected)
コード例 #17
0
 def test_birth_after_marr(self):
     """ Birth of all the children after marriage"""
     ged = Gedcom('./GEDCOM_files/us08/birth_after_marr.ged')
     self.assertEqual(ged.us08_birt_b4_marr_of_par(debug=True), [])
コード例 #18
0
ファイル: test_us13.py プロジェクト: BenjiTheC/SSW555
import unittest
from datetime import datetime
from gedcom_ajry import Gedcom
                                                                # birthdays of siblings
gdm1 = Gedcom("./GEDCOM_files/us13/us13_within9months.ged")     # 24 AUG 1997 and 22 NOV 1997
gdm2 = Gedcom("./GEDCOM_files/us13/us13_within2days.ged")       # 24 AUG 1997 and 26 AUG 1997
gdm3 = Gedcom("./GEDCOM_files/us13/us13_within1day.ged")        # 24 AUG 1997 and 25 AUG 1997
gdm4 = Gedcom("./GEDCOM_files/us13/us13_properbirthdays.ged")   # 24 AUG 1997 and 22 APR 1993

class Sprint2us13_john(unittest.TestCase):
    def test_us13_within9months(self):
        res1 = [('Jordon Mccarthy','@I4@','Harold Mccarthy','@I1@',90)]
        i=-1
        for tupl in gdm1.us13_sibling_spacing(debug=True):
            i=i+1
            self.assertCountEqual(tuple(tupl),tuple(res1[i]))
    
    def test_us13_within2days(self):
        res2 = [('Jordon Mccarthy','@I4@','Harold Mccarthy','@I1@',2)]
        i=-1
        for tupl in gdm2.us13_sibling_spacing(debug=True):
            i=i+1
            self.assertCountEqual(tuple(tupl),tuple(res2[i]))
    
    def test_us13_within1day(self):
        res3=[]
        i=-1
        for tupl in gdm3.us13_sibling_spacing(debug=True):
            i=i+1
            self.assertCountEqual(tuple(tupl),tuple(res3[i]))
コード例 #19
0
 def test_prev_marr_end_partner_dies(self):
     """ Previous marriage ends with the partner's death"""
     ged = Gedcom('./GEDCOM_files/us11/us11_prev_partner_dies.ged')
     expected = [('@I1@', 'Fake Arshel', '@F1@ and @F2@')]
     self.assertEqual(ged.us11_no_bigamy(debug=True), expected)
コード例 #20
0
 def test_no_bigamy(self):
     """ None of the spouses are involved in multiple marriages"""
     ged = Gedcom('./GEDCOM_files/us11/test04.ged')
     self.assertEqual(ged.us11_no_bigamy(debug=True), [])
コード例 #21
0
ファイル: test_us05.py プロジェクト: BenjiTheC/SSW555
import unittest
from datetime import datetime
from gedcom_ajry import Gedcom

gdm1 = Gedcom("./GEDCOM_files/us05/test1_us05_john.ged")
gdm2 = Gedcom("./GEDCOM_files/us05/test2_us05_john.ged")
gdm3 = Gedcom("./GEDCOM_files/us05/test3_us05_john.ged")
gdm4 = Gedcom("./GEDCOM_files/us05/test4_us05_john.ged")
res1 = [('wife', 'Lilia Orourke', '@I7@', '@F2@')]
res2 = [('husband', 'Oswaldo Mccarthy', '@I2@', '@F1@')]
res3 = [('husband', 'Winfred Ault', '@I15@', '@F3@')]


class Sprint1us03_john(unittest.TestCase):
    def test_us05_marriage_before_death(self):
        self.assertCountEqual(gdm1.us05_marriage_before_death(debug=True),
                              res1)
        self.assertCountEqual(gdm2.us05_marriage_before_death(debug=True),
                              res2)
        self.assertCountEqual(gdm3.us05_marriage_before_death(debug=True),
                              res3)
        self.assertCountEqual(gdm4.us05_marriage_before_death(debug=True), [])


if __name__ == "__main__":
    unittest.main()
コード例 #22
0
""" John, 7th April 2019
    US29 : List all deceased individuals in a GEDCOM file
"""
import unittest
from datetime import datetime
from gedcom_ajry import Gedcom

gdm1 = Gedcom("./GEDCOM_files/us29/us29_some_deaths.ged")
gdm2 = Gedcom("./GEDCOM_files/us29/us29_no_deaths.ged")
gdm3 = Gedcom("./GEDCOM_files/us29/us29_one_death.ged")


class test_us29(unittest.TestCase):
    def test_some_deaths(self):
        result = {
            '@I7@': 'Lilia Orourke',
            '@I12@': 'Minna Jensen',
            '@I15@': 'Winfred Ault',
            '@I21@': 'Vivian Sue'
        }
        self.assertDictEqual(gdm1.us29_list_deceased(debug=True), result)

    def test_no_deaths(self):
        result = {}
        self.assertDictEqual(gdm2.us29_list_deceased(debug=True), result)

    def test_one_death(self):
        result = {'@I13@': 'Mellisa Triplett'}
        self.assertDictEqual(gdm3.us29_list_deceased(debug=True), result)

コード例 #23
0
ファイル: test_us23.py プロジェクト: BenjiTheC/SSW555
 def test_all_unique_name_birthdate(self):
     """ None of the individual has same name or birthdate"""
     ged = Gedcom('./GEDCOM_files/us23/no_err.ged')
     self.assertEqual(ged.us23_unique_name_and_birt(debug=True), [])
コード例 #24
0
 def test_multi_birt_less_than_5(self):
     """ No more than five siblings should be born at the same time within a family """
     ged = Gedcom('./GEDCOM_files/integrated_no_err.ged')
     self.assertEqual(ged.us14_multi_birt_less_than_5(debug=True), [])
コード例 #25
0
 def test_duplicate_ids(self):
     gdm = Gedcom("./GEDCOM_files/us22/us22_duplicate_id.ged")
     self.assertEqual(gdm.us22_unique_ids(debug=True), [('@I1@', 'INDI')])
コード例 #26
0
ファイル: test_us01.py プロジェクト: BenjiTheC/SSW555
 def setUp(self):
     self.current_date = datetime.now()
     self.gdm = Gedcom("./GEDCOM_files/integrated_no_err.ged")
     self.indis = self.gdm.indis
     self.fams = self.gdm.fams
コード例 #27
0
 def test_unique_ids(self):
     gdm = Gedcom("./GEDCOM_files/us01/proj01.ged")
     self.assertEqual(gdm.us22_unique_ids(debug=True), [])
コード例 #28
0
 def test_prev_marr_end_with_div(self):
     """ Previous marriage ends with divorce"""
     ged = Gedcom('./GEDCOM_files/us11/us11_prev_div.ged')
     expected = [('@I1@', 'Fake Arshel', '@F1@ and @F2@')]
     self.assertEqual(ged.us11_no_bigamy(debug=True), expected)
コード例 #29
0
""" John, 7th April 2019
    US19 : First cousins should not marry one another
"""
import unittest
from datetime import datetime
from gedcom_ajry import Gedcom

gdm1 = Gedcom("./GEDCOM_files/us19/us19_first_cousins_married.ged")
gdm2 = Gedcom("./GEDCOM_files/us19/us19_first_cousins_not_married.ged")


class test_us19(unittest.TestCase):
    def test_first_cousins_married(self):
        result = [('Andre Benjamin', '@I18@', 'Jasmine Colman', '@I25@'),
                  ('Jasmine Colman', '@I25@', 'Andre Benjamin', '@I18@')]
        i = -1
        for tupl in gdm1.us19_first_cousins_should_not_marry(debug=True):
            i = i + 1
            self.assertCountEqual(tuple(tupl), tuple(result[i]))

    def test_first_cousins_not_married(self):
        result = []
        i = -1
        for tupl in gdm2.us19_first_cousins_should_not_marry(debug=True):
            i = i + 1
            self.assertCountEqual(tuple(tupl), tuple(result[i]))


if __name__ == "__main__":
    unittest.main()
コード例 #30
0
 def test_over_150yr_dead(self):
     """ Test the person is over 150 years old and dead."""
     expected = [('@I1@', 'Frank Davis', 152)]
     res = Gedcom('GEDCOM_files/us07/us07_over_150yr_dead.ged'
                  ).us07_less_than_150_yrs(debug=True)
     self.assertEqual(res, expected)