conformance_python.py 文件源码

python
阅读 22 收藏 0 点赞 0 评论 0

项目:coremltools 作者: apple 项目源码 文件源码
def do_test(request):
  test_message = test_messages_proto3_pb2.TestAllTypes()
  response = conformance_pb2.ConformanceResponse()
  test_message = test_messages_proto3_pb2.TestAllTypes()

  try:
    if request.WhichOneof('payload') == 'protobuf_payload':
      try:
        test_message.ParseFromString(request.protobuf_payload)
      except message.DecodeError as e:
        response.parse_error = str(e)
        return response

    elif request.WhichOneof('payload') == 'json_payload':
      try:
        json_format.Parse(request.json_payload, test_message)
      except Exception as e:
        response.parse_error = str(e)
        return response

    else:
      raise ProtocolError("Request didn't have payload.")

    if request.requested_output_format == conformance_pb2.UNSPECIFIED:
      raise ProtocolError("Unspecified output format")

    elif request.requested_output_format == conformance_pb2.PROTOBUF:
      response.protobuf_payload = test_message.SerializeToString()

    elif request.requested_output_format == conformance_pb2.JSON:
      try:
        response.json_payload = json_format.MessageToJson(test_message)
      except Exception as e:
        response.serialize_error = str(e)
        return response

  except Exception as e:
    response.runtime_error = str(e)

  return response
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号