diff options
author | bescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109> | 2005-11-01 04:46:16 +0000 |
---|---|---|
committer | bescoto <bescoto@2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109> | 2005-11-01 04:46:16 +0000 |
commit | 07d8d9cb11114ef5f98993e2e50a67762b3d9aaa (patch) | |
tree | 8bb6237a84163ad01d482bb2c5497305e6524f4e /rdiff-backup/testing | |
parent | a5c03feacbbd9361eb3e2abe367b75529c83459b (diff) | |
download | rdiff-backup-07d8d9cb11114ef5f98993e2e50a67762b3d9aaa.tar.gz |
Added --verify and --verify-at-time switches
git-svn-id: http://svn.savannah.nongnu.org/svn/rdiff-backup/trunk@665 2b77aa54-bcbc-44c9-a7ec-4f6cf2b41109
Diffstat (limited to 'rdiff-backup/testing')
-rw-r--r-- | rdiff-backup/testing/commontest.py | 5 | ||||
-rw-r--r-- | rdiff-backup/testing/comparetest.py | 48 |
2 files changed, 51 insertions, 2 deletions
diff --git a/rdiff-backup/testing/commontest.py b/rdiff-backup/testing/commontest.py index b205c0a..27c0406 100644 --- a/rdiff-backup/testing/commontest.py +++ b/rdiff-backup/testing/commontest.py @@ -60,7 +60,7 @@ def rdiff_backup(source_local, dest_local, src_dir, dest_dir, """ if not source_local: src_dir = ("'cd test1; ../%s --server'::../%s" % (RBBin, src_dir)) - if not dest_local: + if dest_dir and not dest_local: dest_dir = ("'cd test2/tmp; ../../%s --server'::../../%s" % (RBBin, dest_dir)) @@ -68,7 +68,8 @@ def rdiff_backup(source_local, dest_local, src_dir, dest_dir, if not (source_local and dest_local): cmdargs.append("--remote-schema %s") if current_time: cmdargs.append("--current-time %s" % current_time) - cmdargs.extend([src_dir, dest_dir]) + cmdargs.append(src_dir) + if dest_dir: cmdargs.append(dest_dir) cmdline = " ".join(cmdargs) print "Executing: ", cmdline ret_val = os.system(cmdline) diff --git a/rdiff-backup/testing/comparetest.py b/rdiff-backup/testing/comparetest.py index 1d0b67d..0459e49 100644 --- a/rdiff-backup/testing/comparetest.py +++ b/rdiff-backup/testing/comparetest.py @@ -98,5 +98,53 @@ class CompareTest(unittest.TestCase): """Test --compare-full of subdirectory, remote""" self.generic_selective_test(0, "--compare-full") + def verify(self, local): + """Used for the verify tests""" + def change_file(rp): + """Given rpath, open it, and change a byte in the middle""" + fp = rp.open("rb") + fp.seek(int(rp.getsize()/2)) + char = fp.read(1) + fp.close() + + fp = rp.open("wb") + fp.seek(int(rp.getsize()/2)) + if char == 'a': fp.write('b') + else: fp.write('a') + fp.close() + + def modify_diff(): + """Write to the stph_icons.h diff""" + l = [filename for filename in + os.listdir('testfiles/output/rdiff-backup-data/increments') + if filename.startswith('stph_icons.h')] + assert len(l) == 1, l + diff_rp = rpath.RPath(Globals.local_connection, + 'testfiles/output/rdiff-backup-data/increments/' + l[0]) + change_file(diff_rp) + + rdiff_backup(local, local, 'testfiles/output', None, + extra_options = "--verify") + rdiff_backup(local, local, 'testfiles/output', None, + extra_options = "--verify-at-time 10000") + modify_diff() + ret_val = rdiff_backup(local, local, 'testfiles/output', None, + extra_options = "--verify-at-time 10000", + check_return_val = 0) + assert ret_val, ret_val + change_file(rpath.RPath(Globals.local_connection, + 'testfiles/output/stph_icons.h')) + ret_val = rdiff_backup(local, local, 'testfiles/output', None, + extra_options = "--verify", check_return_val = 0) + assert ret_val, ret_val + + def testVerifyLocal(self): + """Test --verify of directory, local""" + self.verify(1) + + def testVerifyRemote(self): + """Test --verify remotely""" + self.verify(0) + if __name__ == "__main__": unittest.main() |