def test_userStor20_2(self):

        resultsList = userStory20(
            'InputGedFiles/UserStory20_GED/FamilyTree_MarriedNephew.ged')
        self.assertEqual(
            ['ERROR: FAMILY: US20: 80: F2: Wife (I3) married nephew (I6)'],
            resultsList)
    def test_userStory20_3(self):

        resultsList = userStory20(
            'InputGedFiles/UserStory20_GED/FamilyTree_MarriedNiece.ged')
        self.assertEqual(
            ['ERROR: FAMILY: US20: 117: F3: Husband (I6) married niece (I9)'],
            resultsList)
    def test_userStory20_4(self):

        resultsList = userStory20(
            'InputGedFiles/UserStory20_GED/FamilyTree_MultipleNephewAndNieceMarriages.ged'
        )
        self.assertEqual([
            'ERROR: FAMILY: US20: 168: F3: Husband (I6) married niece (I9)',
            'ERROR: FAMILY: US20: 187: F6: Wife (I12) married nephew (I14)'
        ], resultsList)
def sprint1n2n3n4UserStories():
    fileName = "InputGedFiles/SprintAcceptance/testSprint1_2_3_4_Acceptance.ged"
    indiObj, familyObj, lines = processGedFile(fileName)
    indiTable, familyTable = printTablesData(indiObj, familyObj)
    errorList = []
    errorList.extend(userStory01(fileName))
    errorList.extend(userStory02(fileName))
    errorList.extend(userStory03(fileName))
    errorList.extend(userStory04(fileName))
    errorList.extend(userStory05(fileName))
    errorList.extend(userStory06(fileName))
    errorList.extend(userStory07(fileName))
    errorList.extend(userStory08(fileName))
    errorList.extend(userStory09(fileName))
    errorList.extend(userStory10(fileName))
    errorList.extend(userStory11(fileName))
    errorList.extend(userStory12(fileName))
    errorList.extend(userStory13(fileName))
    errorList.extend(userStory14(fileName))
    errorList.extend(userStory15(fileName))
    errorList.extend(userStory16(fileName))
    errorList.extend(userStory17(fileName))
    errorList.extend(userStory18(fileName))
    errorList.extend(userStory19(fileName))
    errorList.extend(userStory20(fileName))
    errorList.extend(userStory21(fileName))
    errorList.extend(userStory22(fileName))
    errorList.extend(userStory23(fileName))
    errorList.extend(userStory24(fileName))
    errorList.extend(userStory25(fileName))
    errorList.extend(userStory26(fileName))
    errorList.extend(userStory27(fileName))
    errorList.extend(userStory28(fileName))
    errorList.extend(userStory29(fileName))
    errorList.extend(userStory30(fileName))
    errorList.extend(userStory31(fileName))
    errorList.extend(userStory32(fileName))
    errorList.extend(userStory33(fileName))
    errorList.extend(userStory34(fileName))
    errorList.extend(userStory35(fileName))
    errorList.extend(userStory36(fileName))
    errorList.extend(userStory37(fileName))
    errorList.extend(userStory38(fileName))
    errorList.extend(userStory39(fileName))

    for eachError in errorList:
        print(eachError)

    with open('sprint1n2n3n4Output.txt', 'w') as file:
        file.write('\n\nIndividuals Information----------------------->\n')
        file.write(indiTable.get_string())
        file.write("\n")
        file.write('\n\nFamily Information----------------------->\n')
        file.write(familyTable.get_string())
        file.write("\n")
        for eachError in errorList:
            file.write(eachError + "\n")
    def test_userStory20_1(self):

        resultsList = userStory20(
            'InputGedFiles/UserStory20_GED/FamilyTree.ged')
        self.assertEqual([], resultsList)