summaryrefslogtreecommitdiff
path: root/morphlib/cachedir_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'morphlib/cachedir_tests.py')
-rw-r--r--morphlib/cachedir_tests.py128
1 files changed, 0 insertions, 128 deletions
diff --git a/morphlib/cachedir_tests.py b/morphlib/cachedir_tests.py
deleted file mode 100644
index f02f80e1..00000000
--- a/morphlib/cachedir_tests.py
+++ /dev/null
@@ -1,128 +0,0 @@
-# Copyright (C) 2011-2012 Codethink Limited
-#
-# This program is free software; you can redistribute it and/or modify
-# it under the terms of the GNU General Public License as published by
-# the Free Software Foundation; version 2 of the License.
-#
-# This program is distributed in the hope that it will be useful,
-# but WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-# GNU General Public License for more details.
-#
-# You should have received a copy of the GNU General Public License along
-# with this program; if not, write to the Free Software Foundation, Inc.,
-# 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
-
-
-import os
-import shutil
-import tempfile
-import unittest
-
-import morphlib
-
-
-class CacheDirTests(unittest.TestCase):
-
- def cat(self, relative_name):
- with open(os.path.join(self.cachedir.dirname, relative_name)) as f:
- return f.read()
-
- def setUp(self):
- self.dirname = tempfile.mkdtemp()
- self.cachedir = morphlib.cachedir.CacheDir(self.dirname)
-
- def tearDown(self):
- shutil.rmtree(self.dirname)
-
- def test_sets_dirname_attribute(self):
- self.assertEqual(self.cachedir.dirname, os.path.abspath(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))
-
- def test_returns_a_chunk_pathname_in_cache_directory(self):
- dict_key = {
- 'kind': 'chunk',
- 'ref': 'DEADBEEF',
- 'repo': 'git://git.baserock.org/hello/',
- 'arch': 'armv7',
- }
- pathname = self.cachedir.name(dict_key)
- self.assert_(pathname.startswith(self.cachedir.dirname + '/'))
- self.assert_(pathname.endswith('.chunk'))
-
- def test_returns_a_stratum_pathname_in_cache_directory(self):
- dict_key = {
- 'kind': 'stratum',
- 'ref': 'DEADBEEF',
- 'repo': 'git://git.baserock.org/hello/',
- 'arch': 'armv7',
- }
- pathname = self.cachedir.name(dict_key)
- self.assert_(pathname.startswith(self.cachedir.dirname + '/'))
- self.assert_(pathname.endswith('.stratum'))
-
- def test_returns_a_valid_pathname_in_cache_directory(self):
- dict_key = {
- 'ref': 'DEADBEEF',
- 'repo': 'git://git.baserock.org/hello/',
- 'arch': 'armv7',
- }
- pathname = self.cachedir.name(dict_key)
- self.assert_(pathname.startswith(self.cachedir.dirname + '/'))
-
- def test_allows_file_to_be_written_via_basename(self):
- f = self.cachedir.open('foo')
- f.write('bar')
- f.close()
- self.assertEqual(self.cat('foo'), 'bar')
-
- def test_allows_file_to_be_written_via_basename_and_suffix(self):
- f = self.cachedir.open('foo', '.blip')
- f.write('bar')
- f.close()
- self.assertEqual(self.cat('foo.blip'), 'bar')
-
- def test_allows_file_to_be_written_via_dict_key(self):
- dict_key = {
- 'kind': 'chunk',
- 'meh': 'moo',
- }
- name = self.cachedir.name(dict_key)
- f = self.cachedir.open(dict_key)
- f.write('bar')
- f.close()
- self.assertEqual(self.cat(name), 'bar')
-
- def test_allows_file_to_be_aborted(self):
- f = self.cachedir.open('foo')
- f.write('bar')
- f.abort()
- pathname = os.path.join(self.cachedir.dirname, 'foo')
- self.assertFalse(os.path.exists(pathname))