Skip to content

Commit 43ddb3d

Browse files
illia-vhonzakral
authored andcommitted
Dump as minified JSON as possible in its serializer (elastic#658)
1 parent 83a26ec commit 43ddb3d

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

elasticsearch/serializer.py

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -45,7 +45,12 @@ def dumps(self, data):
4545
return data
4646

4747
try:
48-
return json.dumps(data, default=self.default, ensure_ascii=False)
48+
return json.dumps(
49+
data,
50+
default=self.default,
51+
ensure_ascii=False,
52+
separators=(',', ':'),
53+
)
4954
except (ValueError, TypeError) as e:
5055
raise SerializationError(data, e)
5156

test_elasticsearch/test_serializer.py

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,15 +12,15 @@
1212

1313
class TestJSONSerializer(TestCase):
1414
def test_datetime_serialization(self):
15-
self.assertEquals('{"d": "2010-10-01T02:30:00"}', JSONSerializer().dumps({'d': datetime(2010, 10, 1, 2, 30)}))
15+
self.assertEquals('{"d":"2010-10-01T02:30:00"}', JSONSerializer().dumps({'d': datetime(2010, 10, 1, 2, 30)}))
1616

1717
def test_decimal_serialization(self):
1818
if sys.version_info[:2] == (2, 6):
1919
raise SkipTest("Float rounding is broken in 2.6.")
20-
self.assertEquals('{"d": 3.8}', JSONSerializer().dumps({'d': Decimal('3.8')}))
20+
self.assertEquals('{"d":3.8}', JSONSerializer().dumps({'d': Decimal('3.8')}))
2121

2222
def test_uuid_serialization(self):
23-
self.assertEquals('{"d": "00000000-0000-0000-0000-000000000003"}', JSONSerializer().dumps({'d': uuid.UUID('00000000-0000-0000-0000-000000000003')}))
23+
self.assertEquals('{"d":"00000000-0000-0000-0000-000000000003"}', JSONSerializer().dumps({'d': uuid.UUID('00000000-0000-0000-0000-000000000003')}))
2424

2525
def test_raises_serialization_error_on_dump_error(self):
2626
self.assertRaises(SerializationError, JSONSerializer().dumps, object())

0 commit comments

Comments
 (0)