summaryrefslogtreecommitdiffstats
path: root/Lib/test
diff options
context:
space:
mode:
Diffstat (limited to 'Lib/test')
-rw-r--r--Lib/test/test_ntpath.py20
1 files changed, 20 insertions, 0 deletions
diff --git a/Lib/test/test_ntpath.py b/Lib/test/test_ntpath.py
index 0e57c16..538d758 100644
--- a/Lib/test/test_ntpath.py
+++ b/Lib/test/test_ntpath.py
@@ -992,6 +992,26 @@ class TestNtpath(NtpathTestCase):
self.assertTrue(os.path.exists is nt._path_exists)
self.assertFalse(inspect.isfunction(os.path.exists))
+ @unittest.skipIf(os.name != 'nt', "Dev Drives only exist on Win32")
+ def test_isdevdrive(self):
+ # Result may be True or False, but shouldn't raise
+ self.assertIn(ntpath.isdevdrive(os_helper.TESTFN), (True, False))
+ # ntpath.isdevdrive can handle relative paths
+ self.assertIn(ntpath.isdevdrive("."), (True, False))
+ self.assertIn(ntpath.isdevdrive(b"."), (True, False))
+ # Volume syntax is supported
+ self.assertIn(ntpath.isdevdrive(os.listvolumes()[0]), (True, False))
+ # Invalid volume returns False from os.path method
+ self.assertFalse(ntpath.isdevdrive(r"\\?\Volume{00000000-0000-0000-0000-000000000000}\\"))
+ # Invalid volume raises from underlying helper
+ with self.assertRaises(OSError):
+ nt._path_isdevdrive(r"\\?\Volume{00000000-0000-0000-0000-000000000000}\\")
+
+ @unittest.skipIf(os.name == 'nt', "isdevdrive fallback only used off Win32")
+ def test_isdevdrive_fallback(self):
+ # Fallback always returns False
+ self.assertFalse(ntpath.isdevdrive(os_helper.TESTFN))
+
class NtCommonTest(test_genericpath.CommonTest, unittest.TestCase):
pathmodule = ntpath