示例#1
0
文件: backend.py 项目: afirth/server
 def validateResponse(self, jsonString, responseClass):
     """
     Ensures the jsonDict corresponds to a valid instance of responseClass
     Throws an error if the data is invalid
     """
     if self._responseValidation:
         jsonDict = json.loads(jsonString)
         if not responseClass.validate(jsonDict):
             raise exceptions.ResponseValidationFailureException(
                 jsonDict, responseClass)
示例#2
0
    def testValidationFailureExceptionMessages(self):
        # RequestValidationFailureException
        wrongString = "thisIsWrong"
        objClass = protocol.SearchReadsRequest
        obj = objClass()
        obj.start = wrongString
        jsonDict = obj.toJsonDict()
        instance = exceptions.RequestValidationFailureException(
            jsonDict, objClass)
        self.assertIn("invalid fields:", instance.message)
        self.assertIn("u'start': u'thisIsWrong'", instance.message)
        self.assertEqual(instance.message.count(wrongString), 2)

        # ResponseValidationFailureException
        objClass = protocol.SearchReadsResponse
        obj = objClass()
        obj.alignments.extend([protocol.ReadAlignment()])
        obj.alignments[0].alignment.mapping_quality = wrongString
        jsonDict = obj.toJsonDict()
        instance = exceptions.ResponseValidationFailureException(
            jsonDict, objClass)
        self.assertIn("Invalid fields", instance.message)
        self.assertEqual(instance.message.count(wrongString), 2)