from PyObjCTools.TestSupport import TestCase
import HealthKit


class TestHKStateOfMind(TestCase):
    def test_constants(self):
        self.assertIsEnumType(HealthKit.HKStateOfMindValenceClassification)
        self.assertEqual(HealthKit.HKStateOfMindValenceClassificationVeryUnpleasant, 1)
        self.assertEqual(HealthKit.HKStateOfMindValenceClassificationUnpleasant, 2)
        self.assertEqual(
            HealthKit.HKStateOfMindValenceClassificationSlightlyUnpleasant, 3
        )
        self.assertEqual(HealthKit.HKStateOfMindValenceClassificationNeutral, 4)
        self.assertEqual(
            HealthKit.HKStateOfMindValenceClassificationSlightlyPleasant, 5
        )
        self.assertEqual(HealthKit.HKStateOfMindValenceClassificationPleasant, 6)
        self.assertEqual(HealthKit.HKStateOfMindValenceClassificationVeryPleasant, 7)

        self.assertIsEnumType(HealthKit.HKStateOfMindLabel)
        self.assertEqual(HealthKit.HKStateOfMindLabelAmazed, 1)
        self.assertEqual(HealthKit.HKStateOfMindLabelAmused, 2)
        self.assertEqual(HealthKit.HKStateOfMindLabelAngry, 3)
        self.assertEqual(HealthKit.HKStateOfMindLabelAnxious, 4)
        self.assertEqual(HealthKit.HKStateOfMindLabelAshamed, 5)
        self.assertEqual(HealthKit.HKStateOfMindLabelBrave, 6)
        self.assertEqual(HealthKit.HKStateOfMindLabelCalm, 7)
        self.assertEqual(HealthKit.HKStateOfMindLabelContent, 8)
        self.assertEqual(HealthKit.HKStateOfMindLabelDisappointed, 9)
        self.assertEqual(HealthKit.HKStateOfMindLabelDiscouraged, 10)
        self.assertEqual(HealthKit.HKStateOfMindLabelDisgusted, 11)
        self.assertEqual(HealthKit.HKStateOfMindLabelEmbarrassed, 12)
        self.assertEqual(HealthKit.HKStateOfMindLabelExcited, 13)
        self.assertEqual(HealthKit.HKStateOfMindLabelFrustrated, 14)
        self.assertEqual(HealthKit.HKStateOfMindLabelGrateful, 15)
        self.assertEqual(HealthKit.HKStateOfMindLabelGuilty, 16)
        self.assertEqual(HealthKit.HKStateOfMindLabelHappy, 17)
        self.assertEqual(HealthKit.HKStateOfMindLabelHopeless, 18)
        self.assertEqual(HealthKit.HKStateOfMindLabelIrritated, 19)
        self.assertEqual(HealthKit.HKStateOfMindLabelJealous, 20)
        self.assertEqual(HealthKit.HKStateOfMindLabelJoyful, 21)
        self.assertEqual(HealthKit.HKStateOfMindLabelLonely, 22)
        self.assertEqual(HealthKit.HKStateOfMindLabelPassionate, 23)
        self.assertEqual(HealthKit.HKStateOfMindLabelPeaceful, 24)
        self.assertEqual(HealthKit.HKStateOfMindLabelProud, 25)
        self.assertEqual(HealthKit.HKStateOfMindLabelRelieved, 26)
        self.assertEqual(HealthKit.HKStateOfMindLabelSad, 27)
        self.assertEqual(HealthKit.HKStateOfMindLabelScared, 28)
        self.assertEqual(HealthKit.HKStateOfMindLabelStressed, 29)
        self.assertEqual(HealthKit.HKStateOfMindLabelSurprised, 30)
        self.assertEqual(HealthKit.HKStateOfMindLabelWorried, 31)
        self.assertEqual(HealthKit.HKStateOfMindLabelAnnoyed, 32)
        self.assertEqual(HealthKit.HKStateOfMindLabelConfident, 33)
        self.assertEqual(HealthKit.HKStateOfMindLabelDrained, 34)
        self.assertEqual(HealthKit.HKStateOfMindLabelHopeful, 35)
        self.assertEqual(HealthKit.HKStateOfMindLabelIndifferent, 36)
        self.assertEqual(HealthKit.HKStateOfMindLabelOverwhelmed, 37)
        self.assertEqual(HealthKit.HKStateOfMindLabelSatisfied, 38)

        self.assertIsEnumType(HealthKit.HKStateOfMindAssociation)
        self.assertEqual(HealthKit.HKStateOfMindAssociationCommunity, 1)
        self.assertEqual(HealthKit.HKStateOfMindAssociationCurrentEvents, 2)
        self.assertEqual(HealthKit.HKStateOfMindAssociationDating, 3)
        self.assertEqual(HealthKit.HKStateOfMindAssociationEducation, 4)
        self.assertEqual(HealthKit.HKStateOfMindAssociationFamily, 5)
        self.assertEqual(HealthKit.HKStateOfMindAssociationFitness, 6)
        self.assertEqual(HealthKit.HKStateOfMindAssociationFriends, 7)
        self.assertEqual(HealthKit.HKStateOfMindAssociationHealth, 8)
        self.assertEqual(HealthKit.HKStateOfMindAssociationHobbies, 9)
        self.assertEqual(HealthKit.HKStateOfMindAssociationIdentity, 10)
        self.assertEqual(HealthKit.HKStateOfMindAssociationMoney, 11)
        self.assertEqual(HealthKit.HKStateOfMindAssociationPartner, 12)
        self.assertEqual(HealthKit.HKStateOfMindAssociationSelfCare, 13)
        self.assertEqual(HealthKit.HKStateOfMindAssociationSpirituality, 14)
        self.assertEqual(HealthKit.HKStateOfMindAssociationTasks, 15)
        self.assertEqual(HealthKit.HKStateOfMindAssociationTravel, 16)
        self.assertEqual(HealthKit.HKStateOfMindAssociationWork, 17)
        self.assertEqual(HealthKit.HKStateOfMindAssociationWeather, 18)

        self.assertIsEnumType(HealthKit.HKStateOfMindKind)
        self.assertEqual(HealthKit.HKStateOfMindKindMomentaryEmotion, 1)
        self.assertEqual(HealthKit.HKStateOfMindKindDailyMood, 2)
