import sys

if sys.maxsize > 2 ** 32:
    from PyObjCTools.TestSupport import TestCase, min_os_level
    import Contacts

    class TestCNContactRelation(TestCase):
        @min_os_level("10.11")
        def testConstants10_11(self):
            self.assertIsInstance(Contacts.CNLabelContactRelationFather, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationParent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSister, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationChild, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSpouse, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationPartner, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationAssistant, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationManager, str)

        @min_os_level("10.13")
        def testConstants10_13(self):
            self.assertIsInstance(Contacts.CNLabelContactRelationSon, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationDaughter, str)

        @min_os_level("10.15")
        def testConstants10_15(self):
            self.assertIsInstance(Contacts.CNLabelContactRelationColleague, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationTeacher, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSibling, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungerSibling, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationElderSibling, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungerSister, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungestSister, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationElderSister, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationEldestSister, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungerBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungestBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationElderBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationEldestBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMaleFriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFemaleFriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationWife, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationHusband, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMalePartner, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFemalePartner, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGirlfriendOrBoyfriend, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGirlfriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationBoyfriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandparent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandmother, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandmotherMothersMother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandmotherFathersMother, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandfather, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandfatherMothersFather, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandfatherFathersFather, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandparent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandmother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandfather, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandchild, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGranddaughter, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGranddaughterDaughtersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGranddaughterSonsDaughter, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandson, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandsonDaughtersSon, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandsonSonsSon, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandchild, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGreatGranddaughter, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandson, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationParentInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMotherInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationMotherInLawWifesMother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationMotherInLawHusbandsMother, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationFatherInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationFatherInLawWifesFather, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationFatherInLawHusbandsFather, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationCoParentInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationCoMotherInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationCoFatherInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSiblingInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerSiblingInLaw, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationElderSiblingInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSisterInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerSisterInLaw, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationElderSisterInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawSpousesSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawWifesSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawHusbandsSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawYoungerBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawElderBrothersWife, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungerBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungestBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationElderBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationEldestBrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMaleFriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFemaleFriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationWife, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationHusband, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMalePartner, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFemalePartner, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGirlfriendOrBoyfriend, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGirlfriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationBoyfriend, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandparent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandmother, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandmotherMothersMother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandmotherFathersMother, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandfather, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandfatherMothersFather, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandfatherFathersFather, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandparent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandmother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationGreatGrandfather, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationBrotherInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerBrotherInLaw, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationElderBrotherInLaw, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawSpousesBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawHusbandsBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawWifesBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawYoungerSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawElderSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawWifesBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSisterInLawHusbandsBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawWifesSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationBrotherInLawHusbandsSistersHusband, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationCoSiblingInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationCoSisterInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationCoBrotherInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationChildInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationDaughterInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSonInLaw, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationCousin, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationYoungerCousin, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationElderCousin, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationMaleCousin, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationFemaleCousin, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinParentsSiblingsChild, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinParentsSiblingsSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinParentsSiblingsSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinParentsSiblingsSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinParentsSiblingsDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinParentsSiblingsDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinParentsSiblingsDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinMothersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinMothersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinMothersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinMothersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinFathersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinFathersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinFathersSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinFathersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinFathersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinFathersSistersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinFathersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinFathersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinFathersBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinFathersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinFathersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinFathersBrothersSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinGrandparentsSiblingsChild, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinGrandparentsSiblingsDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinGrandparentsSiblingsSon, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersSiblingsSonOrFathersSistersSon,  # noqa: B950
                str,
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersSiblingsSonOrFathersSistersSon,
                str,
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationYoungerCousinMothersSiblingsDaughterOrFathersSistersDaughter,  # noqa: B950
                str,
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationElderCousinMothersSiblingsDaughterOrFathersSistersDaughter,  # noqa: B950
                str,
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationParentsSibling, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsYoungerSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsElderSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingMothersSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingMothersYoungerSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingMothersElderSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingFathersSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingFathersYoungerSibling, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationParentsSiblingFathersElderSibling, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationAunt, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationAuntParentsSister, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntParentsYoungerSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntParentsElderSister, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationAuntFathersSister, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntFathersYoungerSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntFathersElderSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntFathersBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntFathersYoungerBrothersWife, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntFathersElderBrothersWife, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationAuntMothersSister, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntMothersYoungerSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntMothersElderSister, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationAuntMothersBrothersWife, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandaunt, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationUncle, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleParentsBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleParentsYoungerBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleParentsElderBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleMothersBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleMothersYoungerBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleMothersElderBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleMothersSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersYoungerBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersElderBrother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersYoungerSistersHusband, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationUncleFathersElderSistersHusband, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGranduncle, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationSiblingsChild, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationNiece, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNieceSistersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNieceBrothersDaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNieceSistersDaughterOrWifesSiblingsDaughter,
                str,
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNieceBrothersDaughterOrHusbandsSiblingsDaughter,
                str,
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationNephew, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationNephewSistersSon, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationNephewBrothersSon, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNephewBrothersSonOrHusbandsSiblingsSon,
                str,
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationNephewSistersSonOrWifesSiblingsSon, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandniece, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandnieceSistersGranddaughter, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandnieceBrothersGranddaughter, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationGrandnephew, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandnephewSistersGrandson, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandnephewBrothersGrandson, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationStepparent, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepfather, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepmother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepchild, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepson, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepdaughter, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepbrother, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationStepsister, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationMotherInLawOrStepmother, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationFatherInLawOrStepfather, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationDaughterInLawOrStepdaughter, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationSonInLawOrStepson, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationCousinOrSiblingsChild, str
            )
            self.assertIsInstance(Contacts.CNLabelContactRelationNieceOrCousin, str)
            self.assertIsInstance(Contacts.CNLabelContactRelationNephewOrCousin, str)
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGrandchildOrSiblingsChild, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationGreatGrandchildOrSiblingsGrandchild, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationDaughterInLawOrSisterInLaw, str
            )
            self.assertIsInstance(
                Contacts.CNLabelContactRelationSonInLawOrBrotherInLaw, str
            )
