summaryrefslogtreecommitdiff
path: root/rdiff-backup/testing/incrementtest.py
diff options
context:
space:
mode:
Diffstat (limited to 'rdiff-backup/testing/incrementtest.py')
-rw-r--r--rdiff-backup/testing/incrementtest.py70
1 files changed, 24 insertions, 46 deletions
diff --git a/rdiff-backup/testing/incrementtest.py b/rdiff-backup/testing/incrementtest.py
index 96d7811..5df1749 100644
--- a/rdiff-backup/testing/incrementtest.py
+++ b/rdiff-backup/testing/incrementtest.py
@@ -182,54 +182,32 @@ class inctest2(unittest.TestCase):
incs = Restore.get_inclist(inc_base.append("subdir").
append("directory_statistics"))
assert len(incs) == 1
- subdir_stats = self.parse_statistics(incs[0])
- assert subdir_stats.total_files == 2, subdir_stats.total_files
- assert 350000 < subdir_stats.total_file_size < 450000, \
- subdir_stats.total_file_size
- assert subdir_stats.changed_files == 2, subdir_stats.changed_files
- assert 350000 < subdir_stats.changed_file_size < 450000, \
- subdir_stats.changed_file_size
- assert 10 < subdir_stats.increment_file_size < 20000, \
- subdir_stats.increment_file_size
+ subdir_stats = StatsObj().read_stats_from_rp(incs[0])
+ assert subdir_stats.SourceFiles == 2
+ assert 400000 < subdir_stats.SourceFileSize < 420000
+ assert subdir_stats.MirrorFiles == 2
+ assert 400000 < subdir_stats.MirrorFileSize < 420000
+ assert subdir_stats.NewFiles == subdir_stats.NewFileSize == 0
+ assert subdir_stats.DeletedFiles == subdir_stats.DeletedFileSize == 0
+ assert subdir_stats.ChangedFiles == 2
+ assert 400000 < subdir_stats.ChangedSourceSize < 420000
+ assert 400000 < subdir_stats.ChangedMirrorSize < 420000
+ assert 10 < subdir_stats.IncrementFileSize < 20000
incs = Restore.get_inclist(inc_base.append("directory_statistics"))
assert len(incs) == 1
- root_stats = self.parse_statistics(incs[0])
- assert root_stats.total_files == 6, root_stats.total_files
- assert 650000 < root_stats.total_file_size < 750000, \
- root_stats.total_file_size
- assert root_stats.changed_files == 4, root_stats.changed_files
- assert 550000 < root_stats.changed_file_size < 650000, \
- root_stats.changed_file_size
- assert 10 < root_stats.increment_file_size < 20000, \
- root_stats.increment_file_size
-
- def parse_statistics(self, statrp):
- """Return StatObj from given statrp"""
- assert statrp.isincfile() and statrp.getinctype() == "data"
- s = StatObj()
- fp = statrp.open("r")
- for line in fp:
- lsplit = line.split()
- assert len(lsplit) == 2
- field, num = lsplit[0], long(lsplit[1])
- if field == "TotalFiles": s.total_files = num
- elif field == "TotalFileSize": s.total_file_size = num
- elif field == "ChangedFiles": s.changed_files = num
- elif field == "ChangedFileSize": s.changed_file_size = num
- elif field == "IncrementFileSize": s.increment_file_size = num
- else: assert None, "Unrecognized field %s" % (field,)
- assert not fp.close()
- return s
-
-
-class StatObj:
- """Just hold various statistics"""
- total_files = 0
- total_file_size = 0
- changed_files = 0
- changed_file_size = 0
- increment_file_size = 0
-
+ root_stats = StatsObj().read_stats_from_rp(incs[0])
+ assert root_stats.SourceFiles == 7
+ assert 550000 < root_stats.SourceFileSize < 570000
+ assert root_stats.MirrorFiles == 7
+ assert 700000 < root_stats.MirrorFileSize < 750000
+ assert root_stats.NewFiles == 1
+ assert root_stats.NewFileSize == 0
+ assert root_stats.DeletedFiles == 1
+ assert root_stats.DeletedFileSize == 200000
+ assert 3 <= root_stats.ChangedFiles <= 4, root_stats.ChangedFiles
+ assert 450000 < root_stats.ChangedSourceSize < 470000
+ assert 400000 < root_stats.ChangedMirrorSize < 420000
+ assert 10 < subdir_stats.IncrementtFileSize < 30000
if __name__ == '__main__': unittest.main()