2 from bup.helpers import *
10 WVPASSEQ(pn('1.5k'), 1536)
11 WVPASSEQ(pn('2 gb'), 2*1024*1024*1024)
12 WVPASSEQ(pn('1e+9 k'), 1000000000 * 1024)
13 WVPASSEQ(pn('-3e-3mb'), int(-0.003 * 1024 * 1024))
16 def test_strip_path():
17 prefix = "/var/backup/daily.0/localhost"
19 non_matching_prefix = "/home"
20 path = "/var/backup/daily.0/localhost/etc/"
22 WVPASSEQ(strip_path(prefix, path), '/etc')
23 WVPASSEQ(strip_path(empty_prefix, path), path)
24 WVPASSEQ(strip_path(non_matching_prefix, path), path)
25 WVEXCEPT(Exception, strip_path, None, path)
28 def test_strip_base_path():
29 path = "/var/backup/daily.0/localhost/etc/"
30 base_paths = ["/var", "/var/backup", "/var/backup/daily.0/localhost"]
31 WVPASSEQ(strip_base_path(path, base_paths), '/etc')
34 def test_strip_symlinked_base_path():
35 tmpdir = os.path.join(os.getcwd(),"test_strip_symlinked_base_path.tmp")
36 symlink_src = os.path.join(tmpdir, "private", "var")
37 symlink_dst = os.path.join(tmpdir, "var")
38 path = os.path.join(symlink_dst, "a")
41 os.mkdir(os.path.join(tmpdir, "private"))
43 os.symlink(symlink_src, symlink_dst)
45 result = strip_base_path(path, [symlink_dst])
47 os.remove(symlink_dst)
49 os.rmdir(os.path.join(tmpdir, "private"))
52 WVPASSEQ(result, "/a")