os.symlink(self.norm('broken'), self.norm('sym1'))
os.symlink('broken', self.norm('sym2'))
os.symlink(os.path.join('a', 'bcd'), self.norm('sym3'))
+ self.open_dirfd()
+
+ def open_dirfd(self):
+ if self.dir_fd is not None:
+ os.close(self.dir_fd)
if {os.open, os.stat} <= os.supports_dir_fd and os.scandir in os.supports_fd:
self.dir_fd = os.open(self.tempdir, os.O_RDONLY | os.O_DIRECTORY)
else:
def test_glob_named_pipe(self):
path = os.path.join(self.tempdir, 'mypipe')
os.mkfifo(path)
+
+ # gh-117127: Reopen self.dir_fd to pick up directory changes
+ self.open_dirfd()
+
self.assertEqual(self.rglob('mypipe'), [path])
self.assertEqual(self.rglob('mypipe*'), [path])
self.assertEqual(self.rglob('mypipe', ''), [])