From 03ca739a08fc7dd92eb1db962d9c8039167a9477 Mon Sep 17 00:00:00 2001 From: Julien Lengrand-Lambert Date: Thu, 21 Nov 2013 10:36:12 +0100 Subject: [PATCH] Starts implementing the hash method. Throws an exception if the length of value is inconsistent --- 02_hash_maps/hm.py | 6 ++++++ 02_hash_maps/hm_test.py | 9 ++++++++- 2 files changed, 14 insertions(+), 1 deletion(-) diff --git a/02_hash_maps/hm.py b/02_hash_maps/hm.py index 54a489c..71c80f2 100644 --- a/02_hash_maps/hm.py +++ b/02_hash_maps/hm.py @@ -11,3 +11,9 @@ class HashMap(): def size(self): return self._size + def _hash(self, value): + if len(value) < 1: + raise Exception("Size of value must be greater than one") + return 1 + + diff --git a/02_hash_maps/hm_test.py b/02_hash_maps/hm_test.py index 86e2499..1561125 100644 --- a/02_hash_maps/hm_test.py +++ b/02_hash_maps/hm_test.py @@ -12,9 +12,16 @@ import unittest class test_hash_map(unittest.TestCase): def test_size(self): - hm = HashMap() self.assertEqual(hm.size(), 0) + def test__hash(self): + hm = HashMap() + value = "test" + self.assertEqual(hm._hash("test"), 1) + + value = "" + self.assertRaises(Exception, lambda x : hm._hash(value)) + if __name__ == "__main__": unittest.main()