def test_extractShiftPersonFromDict(self):
        control = models.ShiftPerson.query.first()
        stringJSON = shiftperson_controller.shiftPersonToJSON(control)
        data = json.loads(stringJSON)
        target = shiftperson_controller.extractShiftPersonFromDict(data)

        self.assertEqual(control.pk, target.pk)
        self.assertEqual(control.shiftFK, target.shiftFK)
        self.assertEqual(control.personFK, target.personFK)
 def test_insertShiftPerson_duplicate(self):
     shiftPerson1 = models.ShiftPerson.query.first()
     shiftPerson2 = models.ShiftPerson(shiftPerson1.personFK)
     shiftPersonJSON = shiftperson_controller.shiftPersonToJSON(shiftPerson2)
     shiftPersonDict = json.loads(shiftPersonJSON)
     
     result = shiftperson_controller.insertShiftPerson(shiftPerson1.shiftFK, shiftPerson1.personFK, self.db)
     resultDict = json.loads(result)
     for key,value in resultDict.iteritems():
         if key == 'success':
             self.assertEqual(value, 'false')
         if key == 'msg':
             self.assertEqual(value, 'Duplicate')
         elif key == models.SHIFTPERSON_PK_KEY:
             self.assertEqual(value, 'None')
    def test_insertShiftPerson_badperson(self):
        shiftFK = 1
        personFK = 999
        shiftPerson1 = models.ShiftPerson()
        shiftPerson1.personFK = 999
        shiftPersonJSON = shiftperson_controller.shiftPersonToJSON(shiftPerson1)
        shiftPersonDict = json.loads(shiftPersonJSON)

        result = shiftperson_controller.insertShiftPerson(shiftFK, personFK, self.db)
        resultDict = json.loads(result)
        for key,value in resultDict.iteritems():
            if key == 'success':
                self.assertEqual(value, 'false')
            if key == 'msg':
                self.assertEqual(value, 'BadPerson')
            elif key == models.SHIFTPERSON_PK_KEY:
                self.assertEqual(value, 'None')
 def test_shiftPersonToJSON(self):
     control = models.ShiftPerson.query.first()
     controlJSON = shiftperson_controller.shiftPersonToJSON(control)
     expectedJSON = stringJSON = '{"shiftperson_pk":1,"shiftperson_shiftfk":1,"shiftperson_personfk":3}'
     self.assertEqual(controlJSON, expectedJSON)