def testCreateLyonnesseSkillLevel(self):
        emailAddr='*****@*****.**'
        testEntity = hydrauser.create_hydra_user(users.User(email=emailAddr))

        testContent = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE,
                                                                  owner=testEntity
                                                                  )

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE)
        self.assertIsNotNone(result)
        self.assertEqual( result, testContent)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE)
        self.assertEqual( result.valName, 'Neophyte')
    def testEnumerateLyonnesseSkillLevel(self):
        emailAddr='*****@*****.**'
        testEntity = hydrauser.create_hydra_user(users.User(email=emailAddr))

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_UNSKILLED, owner=testEntity)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_UNSKILLED)
        self.assertEqual( result.valName, 'Unskilled')
    
        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE)
        self.assertEqual( result.valName, 'Neophyte')

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_VETERAN)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_VETERAN)
        self.assertEqual( result.valName, 'Veteran')

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_SKILLED)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_SKILLED)
        self.assertEqual( result.valName, 'Skilled')

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_MASTER)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_MASTER)
        self.assertEqual( result.valName, 'Master')

        result = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_SUPERLATIVE)
        self.assertIsNotNone(result)
        self.assertEqual( result.value, lyonnesseskilllevel.LYONNESSESKILLLEVEL_SUPERLATIVE)
        self.assertEqual( result.valName, 'Superlative')
    def testInsertLyonnesseSkill(self):
        emailAddr='*****@*****.**'
        testEntity = hydrauser.create_hydra_user(users.User(email=emailAddr))

        testSL = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE,
                                                             owner=testEntity
                                                             )
        testContent = hydracontent.create_hydra_content(lyonnesseskill.LyonnesseSkill,
                                                        owner=testEntity,
                                                        skillLevel=testSL
                                                        )
        testContent.put()
 
        result = hydracontent.load_hydra_content( testEntity)
        self.assertIsNotNone(result)

        result = db.get( testContent.key())
        self.assertIsNotNone(result)
        self.assertIsInstance( result, lyonnesseskill.LyonnesseSkill)
        self.assertEqual( result.skillLevel, testSL)
        self.assertEqual( result, testContent)  # test __eq__
    def testCloneLyonnesseSkill(self):
        eAddrs=['*****@*****.**',
                '*****@*****.**']
        testEntity = hydrauser.create_hydra_user(users.User(email=eAddrs[0]))
        origPub = hydrauser.create_hydra_user(users.User(email=eAddrs[1]))

        testSL = lyonnesseskilllevel.get_lyonnesseskilllevel(lyonnesseskilllevel.LYONNESSESKILLLEVEL_NEOPHYTE,
                                                             owner=origPub
                                                             )
        testContent = hydracontent.create_hydra_content(lyonnesseskill.LyonnesseSkill,
                                                        owner=origPub,
                                                        originalPublisher=origPub,
                                                        skillLevel=testSL
                                                        )
        testContent.put()

        result = testContent.clone( testEntity)
        self.assertIsNotNone(result)
        self.assertIsInstance( result, lyonnesseskill.LyonnesseSkill)
        self.assertEqual( result.owner, testEntity)
        self.assertEqual( result.originalPublisher, origPub)
        self.assertEqual( result.skillLevel, testSL)