From b50aa17b7a7bca63ceb58c88d90e6db28df98e62 Mon Sep 17 00:00:00 2001 From: Steve Ellis Date: Wed, 28 Aug 2013 11:35:49 -0400 Subject: [PATCH 1/2] Fix JSON serialization --- embedly/models.py | 6 ++++++ embedly/tests.py | 8 +++++++- 2 files changed, 13 insertions(+), 1 deletion(-) diff --git a/embedly/models.py b/embedly/models.py index 5428990..e0826f0 100644 --- a/embedly/models.py +++ b/embedly/models.py @@ -22,3 +22,9 @@ def __str__(self): def __unicode__(self): return '<%s %s>' % (self.method.title(), self.original_url or "") + + def __getitem__(self, key): + if (key in self.data) and (self.data[key] == None): + return '' + else: + return self.data[key] diff --git a/embedly/tests.py b/embedly/tests.py index 3a7c168..d8b86ce 100644 --- a/embedly/tests.py +++ b/embedly/tests.py @@ -61,7 +61,13 @@ def test_model(self): self.assertEqual(obj['new_key'], 'dict value') def test_model_data_can_serialize(self): - obj = Url({'a': {'key': 'value'}}) + obj = Url({'hash': {'key': 'value'}, + 'none': None, + 'empty': '', + 'float': 1.234, + 'int': 1, + 'string': 'string', + 'array': [0, -1]}) unserialzed = json.loads(json.dumps(obj.data)) self.assertDictEqual(obj.data, unserialzed) From 251116888237a6ef99ebfdc36696799d31c88490 Mon Sep 17 00:00:00 2001 From: Steve Ellis Date: Thu, 29 Aug 2013 13:57:39 -0400 Subject: [PATCH 2/2] Remove unneeded override of Url#__get_item__ --- embedly/models.py | 6 ------ 1 file changed, 6 deletions(-) diff --git a/embedly/models.py b/embedly/models.py index e0826f0..5428990 100644 --- a/embedly/models.py +++ b/embedly/models.py @@ -22,9 +22,3 @@ def __str__(self): def __unicode__(self): return '<%s %s>' % (self.method.title(), self.original_url or "") - - def __getitem__(self, key): - if (key in self.data) and (self.data[key] == None): - return '' - else: - return self.data[key]