def test_get_encoding(self): with self.settings(SIMPLE_JSONSCHEMA=s): sj = SimpleJsonschemaMiddleware() resolver_match = ResolverMatchMock('foo:bar') request = HttpRequestMock( 'POST', resolver_match, json_str, 'cp932') encoding = sj.get_encoding(request) self.assertEqual(encoding, 'cp932') request.encoding = None encoding = sj.get_encoding(request) self.assertEqual(encoding, 'utf-8')
def test_process_view(self): with self.settings(SIMPLE_JSONSCHEMA=s): sj = SimpleJsonschemaMiddleware() resolver_match = ResolverMatchMock('foo:bar') request = HttpRequestMock( 'POST', resolver_match, json_str, 'utf-8') result = sj.process_view(request, None, None, None) self.assertIsNone(result) resolver_match = ResolverMatchMock('foo:bar') request = HttpRequestMock( 'POST', resolver_match, '{}'.encode('utf-8'), 'utf-8') result = sj.process_view(request, None, None, None) self.assertIsInstance(result, HttpResponse)
def test_get_schema(self): with self.settings(SIMPLE_JSONSCHEMA=s): sj = SimpleJsonschemaMiddleware() resolver_match = ResolverMatchMock('foo:bar:hoge') request = HttpRequestMock( 'POST', resolver_match, json_str, 'utf-8') schema = sj.get_schema(request).schema schema1 = s[('post', 'foo:bar:hoge')] self.assertEqual(schema, schema1) self.assertIsInstance(sj.get_schema(request), Draft4Validator) resolver_match = ResolverMatchMock('foo:bar') request = HttpRequestMock( 'PUT', resolver_match, json_str, 'utf-8') schema = sj.get_schema(request).schema schema2 = s[('post', 'foo:bar:hoge')] self.assertEqual(schema, schema2) self.assertIsInstance(sj.get_schema(request), Draft4Validator)