diff options
author | Lars Wirzenius <liw@liw.fi> | 2011-12-29 13:27:40 +0000 |
---|---|---|
committer | Lars Wirzenius <liw@liw.fi> | 2011-12-29 13:27:40 +0000 |
commit | 1f68a394826daabe18c5662ba60c583450cdb72d (patch) | |
tree | cd5b8f1308128cea39a2b9a22642fd6b29775b8d /summainlib_tests.py | |
parent | db9fc04e3542ff3475f0caecbfe0409c0aa63f8c (diff) | |
download | summain-1f68a394826daabe18c5662ba60c583450cdb72d.tar.gz |
use nanosecond resolution for timestamps
Diffstat (limited to 'summainlib_tests.py')
-rw-r--r-- | summainlib_tests.py | 48 |
1 files changed, 26 insertions, 22 deletions
diff --git a/summainlib_tests.py b/summainlib_tests.py index 4ec3da5..8480057 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, @@ -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, |