| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import unittest
- import os
- from shutil import rmtree
- from src.cache import to_dir, Cache
- class TestCache(unittest.TestCase):
- def setUp(self):
- os.mkdir('baz')
- for name in ('foo', 'bar'):
- f = open('baz/' + name, 'w')
- f.write(name)
- f.close()
- self.c = Cache(files=['foo', 'bar'], root='baz')
- def tearDown(self):
- rmtree('baz')
- def test_to_dir(self):
- self.assertEqual(to_dir(''), '')
- self.assertEqual(to_dir('foo'), 'foo/')
- self.assertEqual(to_dir('foo/'), 'foo/')
- def test___init__(self):
- self.assertTrue(hasattr(self.c, 'root'))
- self.assertEqual(self.c.root, 'baz/')
- self.assertTrue(hasattr(self.c, 'files'))
- self.assertEqual(self.c.files, ['baz/foo', 'baz/bar'])
- self.assertTrue(hasattr(self.c, 'cached'))
- self.assertEqual(self.c.cached, 'cached/')
- def test___init___custom_root(self):
- c = Cache(root='foo')
- self.assertTrue(hasattr(c, 'root'))
- self.assertEqual(c.root, 'foo/')
- def test___init___custom_cached_dir(self):
- c = Cache(cached='foo')
- self.assertTrue(hasattr(c, 'cached'))
- self.assertEqual(c.cached, 'foo/')
- def test___init___non_existant_file(self):
- self.assertRaises(IOError, Cache, files=['foo'])
- def test_add(self):
- self.c.add('baz')
- self.assertIn('baz/baz', self.c.files)
- def test_add_non_relative(self):
- self.c.add('baz', absolute=True)
- self.assertIn('baz', self.c.files)
- def test_remove(self):
- self.c.remove('foo')
- self.assertNotIn('baz/foo', self.c.files)
- def test_remove_non_relative(self):
- self.c.remove('baz/foo', absolute=True)
- self.assertNotIn('baz/foo', self.c.files)
- def test_get_modification_dates(self):
- self.c.get_modification_dates()
- self.assertIn('baz/foo', self.c.modified)
- self.assertEqual(self.c.modified['baz/foo'],
- os.path.getmtime('baz/foo'))
|