summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBrian Waldon <bcwaldon@gmail.com>2012-07-27 12:45:24 -0700
committerBrian Waldon <bcwaldon@gmail.com>2012-07-27 12:45:40 -0700
commitf2b38319ba986c566dc9aaaf74747facfe1a1b0c (patch)
treefdbd064d738efcf1052252b110a26cf00c109394
parent2c24556370b82dac6f97d316ec75931a74987b86 (diff)
downloadwarlock-f2b38319ba986c566dc9aaaf74747facfe1a1b0c.tar.gz
Add items method to model
This is similar to the iteritems method in implementation - it exposes the 'items' method of the internal dictionary. Bump version to v0.3.0
-rw-r--r--setup.py2
-rw-r--r--test/test_core.py4
-rw-r--r--warlock/core.py3
3 files changed, 7 insertions, 2 deletions
diff --git a/setup.py b/setup.py
index 439651b..d3b5c45 100644
--- a/setup.py
+++ b/setup.py
@@ -11,7 +11,7 @@ def parse_requirements():
setuptools.setup(
name='warlock',
- version='0.2.0',
+ version='0.3.0',
description='Python object model built on top of JSON schema',
author='Brian Waldon',
author_email='bcwaldon@gmail.com',
diff --git a/test/test_core.py b/test/test_core.py
index 761da16..3502712 100644
--- a/test/test_core.py
+++ b/test/test_core.py
@@ -55,11 +55,13 @@ class TestCore(unittest.TestCase):
exc = warlock.InvalidOperation
self.assertRaises(exc, setattr, sweden, 'abbreviation', 0)
- def test_iteritems(self):
+ def test_items(self):
Country = warlock.model_factory(fixture)
sweden = Country(name='Sweden', population=9379116)
self.assertEqual(set(list(sweden.iteritems())),
set([('name', 'Sweden'), ('population', 9379116)]))
+ self.assertEqual(set(sweden.items()),
+ set([('name', 'Sweden'), ('population', 9379116)]))
def test_dict_syntax(self):
Country = warlock.model_factory(fixture)
diff --git a/warlock/core.py b/warlock/core.py
index 4b96345..4675b88 100644
--- a/warlock/core.py
+++ b/warlock/core.py
@@ -62,5 +62,8 @@ def model_factory(schema):
def iteritems(self):
return copy.deepcopy(self.__dict__['raw']).iteritems()
+ def items(self):
+ return copy.deepcopy(self.__dict__['raw']).items()
+
Model.__name__ = str(schema['name'])
return Model