Commit Graph

95 Commits

Author SHA1 Message Date
Barney Gale 28b2b7407c
GH-112675: Move path joining tests into `test_posixpath` and `test_ntpath` (#112676)
In `test_pathlib`, the `check_drive_root_parts` test methods evaluated
both joining and parsing/normalisation of paths. This dates from a time
when pathlib implemented both functions itself, but nowadays path joining
is done with `posixpath.join()` and `ntpath.join()`.

This commit moves the joining-related test cases into `test_posixpath` and
`test_ntpath`.
2023-12-07 21:45:40 +00:00
Barney Gale e5b08ddddf
gh-101000: Add os.path.splitroot() (#101002)
Co-authored-by: Eryk Sun <eryksun@gmail.com>
Co-authored-by: Alex Waygood <Alex.Waygood@Gmail.com>
2023-01-27 00:28:27 +00:00
Charles Machalow 1b2de89bce
gh-99547: Add isjunction methods for checking if a path is a junction (GH-99548) 2022-11-22 17:19:34 +00:00
Christoph Anton Mitterer 367f552129
gh-96192: fix os.ismount() to use a path that is str or bytes (#96194)
Signed-off-by: Christoph Anton Mitterer <mail@christoph.anton.mitterer.name>
Co-authored-by: Eryk Sun <eryksun@gmail.com>
Co-authored-by: Jelle Zijlstra <jelle.zijlstra@gmail.com>
2022-11-13 20:12:32 -08:00
Christian Heimes 22fed605e0
gh-90473: Make chmod a dummy on WASI, skip chmod tests (GH-93534)
WASI does not have the ``chmod(2)`` syscall yet.
2022-06-06 19:24:11 +02:00
Christian Heimes 6f8367d348
gh-90473: wasmtime does not support absolute symlinks (GH-93490) 2022-06-05 09:59:47 +02:00
neonene 9c5fa9c97c
bpo-46208: Fix normalization of relative paths in _Py_normpath()/os.path.normpath (GH-30362) 2022-01-06 19:13:10 +00:00
Eric Snow 17c61045c5
bpo-45506: Normalize _PyPathConfig.stdlib_dir when calculated. (#29040)
The recently added PyConfig.stdlib_dir was being set with ".." entries. When __file__ was added for from modules this caused a problem on out-of-tree builds. This PR fixes that by normalizing "stdlib_dir" when it is calculated in getpath.c.

https://bugs.python.org/issue45506
2021-10-22 17:20:03 -06:00
Barney Gale baecfbd849
bpo-43757: Make pathlib use os.path.realpath() to resolve symlinks in a path (GH-25264)
Also adds a new "strict" argument to realpath() to avoid changing the default behaviour of pathlib while sharing the implementation.
2021-04-28 16:50:17 +01:00
pxinwr b230409f21
bpo-31904: Skip os.path.expanduser() tests on VxWorks (GH-23776) 2020-12-15 22:24:00 +01:00
Hai Shi d94af3f7ed
bpo-40275: Remove test helpers aliases in test.support (GH-21771) 2020-08-08 11:32:41 +02:00
Hai Shi 598a951844
bpo-40275: Use new test.support helper submodules in tests (GH-21764) 2020-08-07 17:18:38 +02:00
Serhiy Storchaka 700cfa8c90
bpo-41069: Make TESTFN and the CWD for tests containing non-ascii characters. (GH-21035) 2020-06-25 17:56:31 +03:00
Victor Stinner 8f4ef3b019
Remove unused imports in tests (GH-14518) 2019-07-01 18:28:25 +02:00
Victor Stinner f2f4555d82
bpo-10496: posixpath.expanduser() catchs pwd.getpwuid() error (GH-10919)
* posixpath.expanduser() now returns the input path unchanged if
  the HOME environment variable is not set and pwd.getpwuid() raises
  KeyError (the current user identifier doesn't exist in the password
  database).
* Add test_no_home_directory() to test_site.
2018-12-05 16:49:35 +01:00
Serhiy Storchaka 0185f34ddc
bpo-33721: Make some os.path functions and pathlib.Path methods be tolerant to invalid paths. (#7695)
Such functions as os.path.exists(), os.path.lexists(), os.path.isdir(),
os.path.isfile(), os.path.islink(), and os.path.ismount() now return False
instead of raising ValueError or its subclasses UnicodeEncodeError
and UnicodeDecodeError for paths that contain characters or bytes
unrepresentative at the OS level.
2018-09-18 11:28:51 +03:00
Serhiy Storchaka 17a0088e26
bpo-33861: Minor improvements of tests for os.path. (GH-7715)
* Test exists(), lexists(), isdir(), isfile(), islink(), ismount()
  with bytes paths.
* Remove unneeded silencing DeprecationWarning for ismount() with
  bytes path.
* Test common functions with unencodable and undecodable paths.
* Minor clean up and refactoring.
2018-06-16 13:25:55 +03:00
Serhiy Storchaka b21d155f57
bpo-32964: Reuse a testing implementation of the path protocol in tests. (#5930) 2018-03-02 11:53:51 +02:00
Brett Cannon 3f9183b5ac Issue #26027, #27524: Add PEP 519/__fspath__() support to os and
os.path.

Thanks to Jelle Zijlstra for the initial patch against posixmodule.c.
2016-08-26 14:44:48 -07:00
R David Murray 750018b91a #2466: ismount now recognizes mount points user can't access.
Patch by Robin Roth, reviewed by Serhiy Storchaka, comment wording
tweaked by me.
2016-08-18 21:27:48 -04:00
Serhiy Storchaka a3fd0b26ba Issue #24950: Fixed expanduser tests when the users home directory in pwd is "/".
Based on patch by SilentGhost.
2016-05-03 21:17:03 +03:00
Serhiy Storchaka 5fbadb63ef Use support.change_cwd() in tests. 2015-09-06 14:14:49 +03:00
Serhiy Storchaka 2a23adf440 Use support.change_cwd() in tests. 2015-09-06 14:13:25 +03:00
Serhiy Storchaka 3822093143 Issue #10395: Added os.path.commonpath(). Implemented in posixpath and ntpath.
Based on patch by Rafik Draoui.
2015-03-31 15:31:53 +03:00
Serhiy Storchaka 3deeeb0c39 Issue #21883: os.path.join() and os.path.relpath() now raise a TypeError with
more helpful error message for unsupported or mismatched types of arguments.
2014-10-04 14:58:43 +03:00
Serhiy Storchaka 1fa36268cf Issue #22034: Improve handling of wrong argument types in posixpath.join(). 2014-08-24 12:23:36 +03:00
Serhiy Storchaka 549c1972f2 Issue #22034: Got rid of misleading error message for bytearray arguments in
posixpath.join().
2014-08-24 12:18:09 +03:00
Ezio Melotti 79ec9f0ec9 #17809: merge with 3.3. 2013-05-09 15:24:30 +03:00
Ezio Melotti ce82d57c74 #17809: fix a test failure in test_expanduser when $HOME has a trailing /. Patch by Kubilay Kocak. 2013-05-09 15:19:45 +03:00
Ezio Melotti dc99e0d396 #17315: merge with 3.3. 2013-03-01 21:00:48 +02:00
Ezio Melotti 7b3e571c16 #17315: merge with 3.2. 2013-03-01 21:00:05 +02:00
Ezio Melotti 136726c59f #17315: unlink a file that test_posixpath was leaving around. 2013-03-01 20:59:17 +02:00
Serhiy Storchaka 789ee0f31f Disable posixpath.realpath() tests on Windows (fix for issue #6975). 2013-02-18 13:33:37 +02:00
Serhiy Storchaka 41d4ebbf43 Disable posixpath.realpath() tests on Windows (fix for issue #6975). 2013-02-18 13:33:13 +02:00
Serhiy Storchaka 1548ed6698 Disable posixpath.realpath() tests on Windows (fix for issue #6975). 2013-02-18 13:32:30 +02:00
Serhiy Storchaka 2a47954895 Fix posixpath.realpath() for multiple pardirs (fixes issue #6975). 2013-02-18 12:22:05 +02:00
Serhiy Storchaka 407aa2df2a Fix posixpath.realpath() for multiple pardirs (fixes issue #6975). 2013-02-18 12:21:30 +02:00
Serhiy Storchaka 467393dff5 Fix posixpath.realpath() for multiple pardirs (fixes issue #6975). 2013-02-18 12:21:04 +02:00
Serhiy Storchaka f2619236eb Issue #6975: os.path.realpath() now correctly resolves multiple nested symlinks on POSIX platforms. 2013-02-10 12:24:06 +02:00
Serhiy Storchaka d83c82440b Issue #6975: os.path.realpath() now correctly resolves multiple nested symlinks on POSIX platforms. 2013-02-10 12:23:10 +02:00
Serhiy Storchaka df32691e6f Issue #6975: os.path.realpath() now correctly resolves multiple nested symlinks on POSIX platforms. 2013-02-10 12:22:07 +02:00
Ezio Melotti 11b3a6056f #16852: merge with 3.3. 2013-01-10 03:29:45 +02:00
Ezio Melotti d0dfe9ad46 #16852: test_genericpath, test_posixpath, test_ntpath, and test_macpath now work with unittest test discovery. Patch by Zachary Ware. 2013-01-10 03:12:50 +02:00
Brian Curtin 490b32a397 Fix #11939. Set st_dev attribute on Windows to simplify os.path.samefile.
By setting the st_dev attribute, we can then remove some Windows-specific
code and move os.path.samefile/sameopenfile/samestat to Lib/genericpath.py
so all platforms share the same implementation.
2012-12-26 07:03:03 -06:00
Hynek Schlawack 11718620ef Use posixpath.join() explicitely in posixpath.join() test
Used os.path.join before which has different semantics on Windows.
2012-07-17 14:29:33 +02:00
Hynek Schlawack 0b350c6b3e Use posixpath.join() explicitely in posixpath.join() test
Used os.path.join before which has different semantics on Windows.
2012-07-17 14:28:44 +02:00
Hynek Schlawack 1815191f17 #15377: Make posixpath.join() more strict when checking for str/bytes mix
Based on a patch by Nick Coghlan.
2012-07-17 13:10:15 +02:00
Hynek Schlawack c5a4566922 #15377: Make posixpath.join() more strict when checking for str/bytes mix
Based on a patch by Nick Coghlan.
2012-07-17 13:05:43 +02:00
Hynek Schlawack 1c4eb2c09a Fix context manager use in posixpath.join() tests
The asserts were useless (and buggy).
2012-07-17 10:50:30 +02:00
Hynek Schlawack 7cdc2bdd0d Fix context manager use in posixpath.join() tests
The asserts were useless (and buggy).
2012-07-17 10:48:19 +02:00