From 389891d13d18cd69e34b819b4bb6fa06f52d3067 Mon Sep 17 00:00:00 2001 From: Erik Montnemery Date: Tue, 16 Mar 2021 17:12:51 +0100 Subject: [PATCH] Improve JSONEncoder test coverage (#47935) --- tests/helpers/test_json.py | 12 +++++++++--- 1 file changed, 9 insertions(+), 3 deletions(-) diff --git a/tests/helpers/test_json.py b/tests/helpers/test_json.py index 8ae516b2bbe..55d566f5edd 100644 --- a/tests/helpers/test_json.py +++ b/tests/helpers/test_json.py @@ -11,11 +11,17 @@ def test_json_encoder(hass): ha_json_enc = JSONEncoder() state = core.State("test.test", "hello") + # Test serializing a datetime + now = dt_util.utcnow() + assert ha_json_enc.default(now) == now.isoformat() + + # Test serializing a set() + data = {"milk", "beer"} + assert sorted(ha_json_enc.default(data)) == sorted(list(data)) + + # Test serializing an object which implements as_dict assert ha_json_enc.default(state) == state.as_dict() # Default method raises TypeError if non HA object with pytest.raises(TypeError): ha_json_enc.default(1) - - now = dt_util.utcnow() - assert ha_json_enc.default(now) == now.isoformat()