def test_corresponding_indi(self): indi_dict = build_individual_list(PATH) fam_dict = build_family_list(PATH) family_corresponding_in_indi(indi_dict, fam_dict) self.assertEqual([ str(error) for error in indi_dict['026I06'].error_list ], [ 'Error: Individual: US26: 39: 026I06: Corresponding issue happened. 126I03 ' 'not found in family list.' ]) self.assertEqual([ str(error) for error in indi_dict['026I04'].error_list ], [ 'Error: Individual: US26: 26: 026I04: Corresponding issue happened. ' 'Family 126I02 does not have individual 026I04.' ]) self.assertEqual([ str(error) for error in indi_dict['026I07'].error_list ], [ 'Error: Individual: US26: 45: 026I07: Corresponding issue happened. ' 'Family 126I02 does not have individual 026I07.' ]) self.assertEqual([ str(error) for error in indi_dict['026I08'].error_list ], [ 'Error: Individual: US26: 51: 026I08: Corresponding issue happened. ' 'Family 126I02 does not have individual 026I08.' ])
def test_unique_indi_id(self): path = r"..\..\test22.ged" indi_dict = build_individual_list(path) self.assertEqual([str(error) for error in indi_dict['022I01'].error_list], ["ERROR: INDIVIDUAL: US22: 9: 022I01: Individual ID 022I01 should be unique!"]) self.assertEqual([str(error) for error in indi_dict['022I02'].error_list], ["ERROR: INDIVIDUAL: US22: 23: 022I02: Individual ID 022I02 should be unique!"])
def test_listalldeceased(self): path = r"..\..\test2930.ged" individual_list = build_individual_list(path) deathpeople = listalldeceased(individual_list) list1 = [[i.indi_id[0]] for i in deathpeople] self.assertEqual(list1, [['I0291']])
def test_listlivemarried(self): path = r"..\..\test2930.ged" indi_dict = build_individual_list(path) livemarried = listlivemarried(indi_dict) list2 = [[i.indi_id[0]] for i in livemarried] list2.sort() self.assertEqual(list2, [['I0292'], ['I0293'], ['I0294'], ['I0295']])
def test_date_before_current(self): path = r"..\..\test.ged" family_dict = build_family_list(path) indi_dict=build_individual_list(path) date_before_current(indi_dict,family_dict) self.assertEqual([str(error) for error in indi_dict['I04'].error_list], ["ERROR: INDIVIDUAL: US01: 26: I04: birthday date 2022-05-04 00:00:00 before today"])
def test_unique_date_and_birthday_us23(self): individual_dict = build_individual_list(path2) unique_name_and_birthday_us23(individual_dict) self.assertEqual([ str(error) for error in individual_dict['023I01'].error_list ], [ 'Error: INDIVIDUAL: US23: 3: 023I01: more than one individual with same name ' 'Qiang /Wang/ and birth date 5 JUL 1950 appear in the GED file' ])
def test_US11(self): individual_dict = build_individual_list(path) family_dict = build_family_list(path) US11(individual_dict, family_dict) self.assertEqual([ str(error) for error in individual_dict['011I04'].error_list ], [ 'Error: INDIVIDUAL: US11: 61: 011I04: bigamy happened on family 011F2 and family 011F3' ])
def test_less_than_150(self): indi_dict = build_individual_list(path) less_than_150(indi_dict) self.assertEqual( [str(error) for error in indi_dict['I1'].error_list], [ "ERROR: INDIVIDUAL: US07: 9: I1: " "Jenny /Smith/'s age should be less than 150 years." ]) self.assertEqual( [str(error) for error in indi_dict['I2'].error_list], [ "ERROR: INDIVIDUAL: US07: 15: I2: " "Michael /Wilson/ should no more than 150 years old." ]) self.assertEqual([str(error) for error in indi_dict['I3'].error_list], []) self.assertEqual([str(error) for error in indi_dict['I4'].error_list], [])
def test_corresponding_family(self): indi_dict = build_individual_list(PATH) fam_dict = build_family_list(PATH) indi_corresponding_in_family(indi_dict, fam_dict) self.assertEqual([ str(error) for error in fam_dict['126I01'].error_list ], [ 'Error: Family: US26: 57: 126I01: Corresponding issue happened. Family ' "126I01's children 026I04 has wrong family Id." ]) self.assertEqual([ str(error) for error in fam_dict['126I02'].error_list ], [ "Error: Family: US26: 61: 126I02: Corresponding issue happened. " "Family 126I02's spouse 026I06 has wrong family Id.", "Error: Family: US26: 62: 126I02: Corresponding issue happened. " "Family 126I02's spouse 026I05 has wrong family Id.", "Error: Family: US26: 63: 126I02: Corresponding issue happened. " "Family 126I02's children 026I03 has wrong family Id." ])
def test_recent_deaths_us36(self): indi = build_individual_list(Path2) list_result = recent_deaths(indi) self.assertEqual(list_result, ['136I01'])
def test_recent_births_us35(self): indi = build_individual_list(Path1) list_result = recent_births(indi) self.assertEqual(list_result, ['135I01', '135I02'])
def test_birth_b_death_us03(self): indi_dict = build_individual_list(path) birth_b_death_us03(indi_dict) self.assertEqual([str(error) for error in indi_dict['I01'].error_list], ["ERROR: INDIVIDUAL: US03: 5: I01: " "I01's birthday 5 JUL 1950 isn't before death date 31 DEC 1949"])