summaryrefslogtreecommitdiff
path: root/summainlib_tests.py
diff options
context:
space:
mode:
Diffstat (limited to 'summainlib_tests.py')
-rw-r--r--summainlib_tests.py50
1 files changed, 27 insertions, 23 deletions
diff --git a/summainlib_tests.py b/summainlib_tests.py
index 4ec3da5..f8bcc27 100644
--- a/summainlib_tests.py
+++ b/summainlib_tests.py
@@ -20,13 +20,6 @@ import unittest
import summainlib
-class FakeStatResult(object):
-
- def __init__(self, *args, **kwargs):
- for name, value in kwargs.iteritems():
- setattr(self, name, value)
-
-
class FakeChecksummer(object):
def update(self, data):
@@ -63,7 +56,7 @@ class FakeReadlink(object):
self.parent = parent
def __call__(self, filename):
- if stat.S_ISLNK(self.parent.st.st_mode):
+ if stat.S_ISLNK(self.parent.st[summainlib.RESULT_MODE]):
self.target = 'symlink'
else:
self.target = ''
@@ -73,14 +66,17 @@ class FakeReadlink(object):
class FilesystemObjectTests(unittest.TestCase):
def setUp(self):
- self.st = FakeStatResult(st_mtime=1262307723.123456789,
- st_mode=stat.S_IFREG | 0644,
- st_ino=12765,
- st_dev=42,
- st_nlink=2,
- st_size=1,
- st_uid=0,
- st_gid=0)
+ self.st = {
+ summainlib.RESULT_MTIME_SEC: 1262307723,
+ summainlib.RESULT_MTIME_NSEC: 123456789,
+ summainlib.RESULT_MODE: stat.S_IFREG | 0644,
+ summainlib.RESULT_INO: 12765,
+ summainlib.RESULT_DEV: 42,
+ summainlib.RESULT_NLINK: 2,
+ summainlib.RESULT_SIZE: 1,
+ summainlib.RESULT_UID: 0,
+ summainlib.RESULT_GID: 0
+ }
self.nn = summainlib.NumberNormalizer()
self.pn = summainlib.SamePath()
@@ -88,7 +84,7 @@ class FilesystemObjectTests(unittest.TestCase):
def new(self, name, mode=None):
if mode is not None:
- self.st.st_mode = mode
+ self.st[summainlib.RESULT_MODE] = mode
return summainlib.FilesystemObject(name, self.nn, self.pn,
self.exclude,
stat_result=self.st,
@@ -113,7 +109,7 @@ class FilesystemObjectTests(unittest.TestCase):
def test_formats_mtime_correctly(self):
self.assertEqual(self.new('foo')['Mtime'],
- '2010-01-01 01:02:03.123457 +0000')
+ '2010-01-01 01:02:03.123456789 +0000')
def test_formats_mode_for_regular_file_correctly(self):
self.assertEqual(self.new('foo')['Mode'], '100644')
@@ -153,7 +149,7 @@ class FilesystemObjectTests(unittest.TestCase):
self.assertEqual(self.new('foo')['SHA512'], 'abc')
def test_formats_checksums_correctly_for_special_file(self):
- self.st.st_mode = stat.S_IFDIR | 0755
+ self.st[summainlib.RESULT_MODE] = stat.S_IFDIR | 0755
self.assertEqual(self.new('foo')['MD5'], '')
self.assertEqual(self.new('foo')['SHA1'], '')
self.assertEqual(self.new('foo')['SHA224'], '')
@@ -162,7 +158,7 @@ class FilesystemObjectTests(unittest.TestCase):
self.assertEqual(self.new('foo')['SHA512'], '')
def test_formats_target_correctly_for_symlink(self):
- self.st.st_mode = stat.S_IFLNK | 0777
+ self.st[summainlib.RESULT_MODE] = stat.S_IFLNK | 0777
self.assertEqual(self.new('foo')['Target'], 'symlink')
def test_formats_target_correctly_for_regular_file(self):
@@ -189,9 +185,17 @@ class FilesystemObjectNormalizedNumbersTests(unittest.TestCase):
self.nn.reset()
def new(self, name):
- st = FakeStatResult(st_ino=self.ino, st_dev=self.dev, st_mtime=0,
- st_mode=stat.S_IFREG|0, st_nlink=1, st_size=0,
- st_uid=0, st_gid=0)
+ st = {
+ summainlib.RESULT_INO: self.ino,
+ summainlib.RESULT_DEV: self.dev,
+ summainlib.RESULT_MTIME_SEC: 0,
+ summainlib.RESULT_MTIME_NSEC: 0,
+ summainlib.RESULT_MODE: stat.S_IFREG|0,
+ summainlib.RESULT_NLINK: 1,
+ summainlib.RESULT_SIZE: 0,
+ summainlib.RESULT_UID: 0,
+ summainlib.RESULT_GID: 0
+ }
self.ino += 1
return summainlib.FilesystemObject(name, self.nn, self.pn,
self.exclude,