diff tests/test_walk.py @ 274:224725fd9f2f

WalkDirEntry: add support for special files (character and block special, FIFO, socket, door, whiteout, event port, ...)
author Franz Glasner <fzglas.hg@dom66.de>
date Wed, 19 Feb 2025 16:42:44 +0100
parents c02a57df2a29
children 99b78fa04bc1
line wrap: on
line diff
--- a/tests/test_walk.py	Wed Feb 19 09:12:30 2025 +0100
+++ b/tests/test_walk.py	Wed Feb 19 16:42:44 2025 +0100
@@ -210,6 +210,7 @@
         self.assertFalse(entry.is_reg)
         self.assertTrue(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_broken_symlink_to_directory(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -218,6 +219,7 @@
         self.assertFalse(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_real_directory(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -226,6 +228,7 @@
         self.assertFalse(entry.is_reg)
         self.assertTrue(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_symlink_to_file(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -234,6 +237,7 @@
         self.assertTrue(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_broken_symlink_to_file(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -242,6 +246,7 @@
         self.assertFalse(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_real_file(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -250,6 +255,7 @@
         self.assertTrue(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
     def test_real_file_via_dir_symlink(self):
         entry = walk.WalkDirEntry.from_path_name(
@@ -258,6 +264,7 @@
         self.assertTrue(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertFalse(entry.is_special)
 
 
 @unittest.skipIf(not hasattr(os, "mkfifo"), "Needs os.mkfifo()")
@@ -279,6 +286,8 @@
         self.assertFalse(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertTrue(entry.is_fifo)
+        self.assertTrue(entry.is_special)
 
     def test_symlink_to_mkfifo(self):
         fifopath = os.path.join(TMPDIR, "test.fifo")
@@ -290,6 +299,8 @@
         self.assertFalse(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNotNone(entry.stat)
+        self.assertTrue(entry.is_fifo)
+        self.assertTrue(entry.is_special)
 
     def test_broken_symlink_to_mkfifo(self):
         fifopath = os.path.join(TMPDIR, "test.fifo")
@@ -302,6 +313,8 @@
         self.assertFalse(entry.is_reg)
         self.assertFalse(entry.is_dir)
         self.assertIsNone(entry.stat)
+        self.assertFalse(entry.is_fifo)
+        self.assertFalse(entry.is_special)
 
 
 if __name__ == "__main__":