Beispiel #1
0
 def testEncodeMessage(self):
     config = remote.ProtocolConfig(protojson, 'proto2')
     self.assertEquals(
         '{"state": "SERVER_ERROR", "error_message": "bad error"}',
         config.encode_message(
             remote.RpcStatus(state=remote.RpcState.SERVER_ERROR,
                              error_message="bad error")))
Beispiel #2
0
 def testEmptyAlternativeTypes(self):
   config = remote.ProtocolConfig(protojson, 'proto2',
                                  alternative_content_types=())
   self.assertEquals(protojson, config.protocol)
   self.assertEquals('proto2', config.name)
   self.assertEquals('application/json', config.default_content_type)
   self.assertEquals((), config.alternate_content_types)
   self.assertEquals(('application/json',), config.content_types)
Beispiel #3
0
  def testEncodeMessage(self):
    config = remote.ProtocolConfig(protojson, 'proto2')
    encoded_message = config.encode_message(
        remote.RpcStatus(state=remote.RpcState.SERVER_ERROR,
                         error_message='bad error'))

    # Convert back to a dictionary from JSON.
    dict_message = protojson.json.loads(encoded_message)
    self.assertEquals({'state': 'SERVER_ERROR', 'error_message': 'bad error'},
                      dict_message)
Beispiel #4
0
 def testConstructorDefaults(self):
     config = remote.ProtocolConfig(protojson, 'proto2')
     self.assertEquals(protojson, config.protocol)
     self.assertEquals('proto2', config.name)
     self.assertEquals('application/json', config.default_content_type)
     self.assertEquals(('application/x-javascript', 'text/javascript',
                        'text/x-javascript', 'text/x-json', 'text/json'),
                       config.alternate_content_types)
     self.assertEquals(
         ('application/json', 'application/x-javascript', 'text/javascript',
          'text/x-javascript', 'text/x-json', 'text/json'),
         config.content_types)
Beispiel #5
0
 def testConstructor(self):
     config = remote.ProtocolConfig(protojson, 'proto1',
                                    'application/X-Json',
                                    iter(['text/Json', 'text/JavaScript']))
     self.assertEquals(protojson, config.protocol)
     self.assertEquals('proto1', config.name)
     self.assertEquals('application/x-json', config.default_content_type)
     self.assertEquals(('text/json', 'text/javascript'),
                       config.alternate_content_types)
     self.assertEquals(
         ('application/x-json', 'text/json', 'text/javascript'),
         config.content_types)
Beispiel #6
0
    def testUseProtocolConfigContentType(self):
        expected_content_type = 'image/png'

        def expect_content_type(environ, start_response):
            self.assertEquals(expected_content_type, environ['CONTENT_TYPE'])
            app = wsgi_util.static_page('',
                                        content_type=environ['CONTENT_TYPE'])
            return app(environ, start_response)

        self.ResetServer(expect_content_type)

        protocol_config = remote.ProtocolConfig(protojson, 'json', 'image/png')
        self.connection = self.CreateTransport(self.service_url,
                                               protocol_config)

        rpc = self.connection.send_rpc(my_method.remote, self.request)
        self.assertEquals(Message(), rpc.response)
Beispiel #7
0
 def testProtocolConfig(self):
     protocol_config = remote.ProtocolConfig(protojson, 'protoconfig',
                                             'image/png')
     trans = transport.Transport(protocol=protocol_config)
     self.do_test(protojson, trans)
     self.assertTrue(trans.protocol_config is protocol_config)