diff options
Diffstat (limited to 'rdiff-backup/testing/fs_abilitiestest.py')
-rw-r--r-- | rdiff-backup/testing/fs_abilitiestest.py | 50 |
1 files changed, 50 insertions, 0 deletions
diff --git a/rdiff-backup/testing/fs_abilitiestest.py b/rdiff-backup/testing/fs_abilitiestest.py new file mode 100644 index 0000000..0ac75b0 --- /dev/null +++ b/rdiff-backup/testing/fs_abilitiestest.py @@ -0,0 +1,50 @@ +import unittest, os +from commontest import * +from rdiff_backup import Globals, rpath, fs_abilities + +class FSAbilitiesTest(unittest.TestCase): + """Test testing of file system abilities + + Some of these tests assume that the actual file system tested has + the given abilities. If the file system this is run on differs + from the original test system, this test may/should fail. Change + the expected values below. + + """ + # Describes standard linux file system + dir_to_test = "testfiles" + eas = acls = 1 + chars_to_quote = "" + ownership = (os.getuid() == 0) + hardlinks = fsync_dirs = 1 + + # Describes MS-Windows style file system + #dir_to_test = "/mnt/fat" + #eas = acls = 0 + #chars_to_quote = "^a-z0-9_ -" + #ownership = hardlinks = 0 + #fsync_dirs = 1 + + def testReadOnly(self): + """Test basic querying read only""" + base_dir = rpath.RPath(Globals.local_connection, self.dir_to_test) + fsa = fs_abilities.FSAbilities().init_readonly(base_dir) + assert fsa.read_only == 1, fsa.read_only + assert fsa.eas == self.eas, fsa.eas + assert fsa.acls == self.acls, fsa.acls + + def testReadWrite(self): + """Test basic querying read/write""" + base_dir = rpath.RPath(Globals.local_connection, self.dir_to_test) + fsa = fs_abilities.FSAbilities().init_readwrite(base_dir) + assert fsa.read_only == 0, fsa.read_only + assert fsa.eas == self.eas, fsa.eas + assert fsa.acls == self.acls, fsa.acls + assert fsa.chars_to_quote == self.chars_to_quote, fsa.chars_to_quote + assert fsa.ownership == self.ownership, fsa.ownership + assert fsa.hardlinks == self.hardlinks, fsa.hardlinks + assert fsa.fsync_dirs == self.fsync_dirs, fsa.fsync_dirs + + +if __name__ == "__main__": unittest.main() + |