summaryrefslogtreecommitdiff
path: root/morphlib/cachedir_tests.py
diff options
context:
space:
mode:
authorLars Wirzenius <liw@liw.fi>2011-09-29 14:29:19 +0100
committerLars Wirzenius <liw@liw.fi>2011-09-29 14:29:19 +0100
commite8f1882ce8236081ba7a6cc716cff0754e8a438a (patch)
tree8ad1ddb437f2fa3f74afa65d99c959fc49d659ec /morphlib/cachedir_tests.py
parentfebe4fdc0d1f1cfe902300b0b85bd990d88eef50 (diff)
downloadmorph-e8f1882ce8236081ba7a6cc716cff0754e8a438a.tar.gz
Add CacheDir.key method.
Diffstat (limited to 'morphlib/cachedir_tests.py')
-rw-r--r--morphlib/cachedir_tests.py28
1 files changed, 28 insertions, 0 deletions
diff --git a/morphlib/cachedir_tests.py b/morphlib/cachedir_tests.py
index 2ceb01b6..17fa6e0f 100644
--- a/morphlib/cachedir_tests.py
+++ b/morphlib/cachedir_tests.py
@@ -28,3 +28,31 @@ class CacheDirTests(unittest.TestCase):
def test_sets_dirname_attribute(self):
self.assertEqual(self.cachedir.dirname, self.dirname)
+ def test_generates_string_key_for_arbitrary_dict_key(self):
+ key = self.cachedir.key({
+ 'foo': 'bar',
+ 'xyzzy': 'plugh',
+ })
+ self.assertEqual(type(key), str)
+ self.assertNotEqual(key, '')
+
+ def test_generates_same_string_key_twice(self):
+ dict_key = {
+ 'foo': 'bar',
+ 'xyzzy': 'plugh',
+ }
+ self.assertEqual(self.cachedir.key(dict_key),
+ self.cachedir.key(dict_key))
+
+ def test_generates_different_string_keys(self):
+ dict_key_1 = {
+ 'foo': 'bar',
+ 'xyzzy': 'plugh',
+ }
+ dict_key_2 = {
+ 'foo': 'foobar',
+ 'xyzzy': 'stevenage',
+ }
+ self.assertNotEqual(self.cachedir.key(dict_key_1),
+ self.cachedir.key(dict_key_2))
+