Commit Graph

56 Commits

Author SHA1 Message Date
Jelle Zijlstra cc2938a189
gh-124917: Allow keyword args to os.path.exists/lexists on Windows (#124918) 2024-10-11 12:41:59 -07:00
Nice Zombies b64182550f
gh-118507 : Refactor `nt._path_is*` to improve applicability for other cases (GH-118755) 2024-05-21 21:36:36 +01:00
Serhiy Storchaka 652fbf88c4
gh-82626: Emit a warning when bool is used as a file descriptor (GH-111275) 2024-02-05 22:51:11 +02:00
Russell Keith-Magee 391659b3da
gh-114099: Add test exclusions to support running the test suite on iOS (#114889)
Add test annotations required to run the test suite on iOS (PEP 730).

The majority of the change involve annotating tests that use subprocess,
but are skipped on Emscripten/WASI for other reasons, and including
iOS/tvOS/watchOS under the same umbrella as macOS/darwin checks.

`is_apple` and `is_apple_mobile` test helpers have been added to
identify *any* Apple platform, and "any Apple platform except macOS",
respectively.
2024-02-05 01:04:57 +01:00
Finn Womack 0932272431
gh-106242: Fix path truncation in os.path.normpath (GH-106816) 2023-08-15 16:33:00 +01:00
Christian Heimes 9b50585e02
gh-90473: Skip tests that don't apply to Emscripten and WASI (GH-92846) 2022-05-16 16:02:37 +02:00
Christian Heimes 5081e78efd
bpo-40280: Block more non-working syscalls in Emscripten (GH-31757)
- getgroups always fails.
- geteuid and getegid always return 0 (root), which confuse tarfile and
  tests.
- hardlinks (link, linkat) always fails.
- non-encodable file names are not supported by NODERAWFS layer.
- mark more tests with dependency on subprocess and multiprocessing.
  Mocking does not work if the module fails to import.
2022-03-08 12:17:30 +01:00
Hai Shi 4660597b51
bpo-40275: Use new test.support helper submodules in tests (GH-21448) 2020-08-03 18:49:18 +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 d7538dd5e3
bpo-35471: Remove the macpath module (GH-11129)
Python 2.4 dropped MacOS 9 support. The macpath module was deprecated
in Python 3.7. This change removes it.
2018-12-14 13:37:26 +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
Serhiy Storchaka 3460198f6b
bpo-31802: Fix importing native path module before importing os. (#4017) 2018-01-07 17:54:31 +02:00
xdegaye 92c2ca7633
bpo-28759: Skip some tests on PermissionError raised by Android (GH-4350)
Access to mkfifo(), mknod() and hard link creation is controled
by SELinux on Android.
Also remove test.support.android_not_root.
2017-11-12 17:31:07 +01:00
Xavier de Gaye 3a4e989324 Issue #28759: Fix the tests that fail with PermissionError when run as
a non-root user on Android where access rights are controled by SELinux MAC.
2016-12-13 10:00:01 +01:00
Steve Dower e58571b7ea Fixes tests broken by issue #27781. 2016-09-08 11:11:13 -07: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
Berker Peksag f96c84f6e5 Issue #13849: Merge from 3.5 2016-07-23 08:43:04 +03:00
Berker Peksag 5f804e387e Issue #13849: Fix test_null_bytes under Windows 2016-07-23 08:42:41 +03:00
Berker Peksag 804a39f04f Issue #13849: Merge from 3.5 2016-07-23 07:32:14 +03:00
Berker Peksag 9adc1a38bd Issue #13849: Add tests for null byte checking in test_genericpath 2016-07-23 07:31:47 +03:00
Victor Stinner e321274b2e Enhance and modernize test_genericpath
* Replace "try/finally: os.remove()" with self.addCleanup(support.unlink) or
  self.addCleanup(support.rmdir): the support function handles the case when
  the file doesn't exist
* Replace "try/finally: f.close()" with "with open(...) as f:"
* test_getsize: add a second test with a different size
* Create file using "x" mode to ensure that the file didn't exist before, to
  detect bugs in tests
* Open files in unbuffered mode (buferring=0) to write immediatly data on disk
* Replace map() with simpler code
* Split isdir() unit test into two units tests to make them less dependant,
  same change for isfile() test
* test_samefile(): test also two different files
2016-03-24 13:44:19 +01:00
Martin Panter c04fb56e36 Issue #26304: Change "allows to <verb>" to "allows <verb>ing" or similar
The original form is incorrect grammar and feels awkward, even though the
meaning is clear.
2016-02-10 05:44:01 +00:00
Serhiy Storchaka 5bfc03f430 Issue #23780: Improved error message in os.path.join() with single argument.
Idea by R. David Murray.
2015-05-19 11:00:07 +03:00
Serhiy Storchaka e4f47088af Fixed tests on Windows for issue #21883. 2014-10-04 16:09:02 +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 7dfaa27fdd Issue #6815: os.path.expandvars() now supports non-ASCII environment
variables names and values.
2014-02-13 10:14:48 +02:00
Serhiy Storchaka dbb101909d Issue #6815: os.path.expandvars() now supports non-ASCII environment
variables names and values.
2014-02-13 10:13:53 +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
Victor Stinner 269b3ce400 (Merge 3.2) Issue #16218, #16414, #16444: Backport FS_NONASCII,
TESTFN_UNDECODABLE, TESTFN_NONASCII of test.support from Python 3.4. Backport
tests on non-ASCII paths.
2013-01-03 01:56:38 +01:00
Victor Stinner 0af71aae2d Issue #16218, #16414, #16444: Backport FS_NONASCII, TESTFN_UNDECODABLE,
TESTFN_NONASCII of test.support from Python 3.4. Backport tests on non-ASCII
paths.
2013-01-03 01:50:30 +01:00
Brian Curtin e701ec5d3f Add tests for Issue #10646.
This issue is now fixed due to changes in Issue #11939, so I've refactored
the tests to cover the hard link case. There are no code changes here.
2012-12-26 07:36:16 -06: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
Victor Stinner ff3d515952 Issue #16444, #16218: Use TESTFN_UNDECODABLE on UNIX
Check if data is decoded by os.fsdecode() (filesystem encoding with
surrogateescape error handler, PEP 383), not by UTF-8 or the filesystem
encoding in strict mode.

Use TESTFN_UNDECODABLE in test_cmd_line_script.test_non_ascii() on UNIX.
2012-11-10 12:07:39 +01:00
Victor Stinner 8f049e5b5b Issue #16414: Fix support.TESTFN_UNDECODABLE and test_genericpath.test_nonascii_abspath()
* support.TESTFN_UNDECODABLE was decodable if the filesystem encoding was
   cp932
 * test_genericpath.test_nonascii_abspath() didn't work on Windows if the
   path was not decodable (ex: with cp932)
2012-11-06 23:33:46 +01:00
Victor Stinner 8b219b2936 Issue #16414: Add support.FS_NONASCII and support.TESTFN_NONASCII
These constants are used to test functions with non-ASCII data, especially
filenames.
2012-11-06 23:23:43 +01:00
Victor Stinner fce2a6e0c0 Issue #15441, #15478: Reenable test_nonascii_abspath() on Windows
The real bug (issue #15478) has been fixed correctly.
2012-10-31 23:01:30 +01:00
Victor Stinner 7c7ea62e6c Issue #15441: Skip test_nonascii_abspath() of test_genericpath on Windows
if the bytes filenames cannot be encoded from the file system (ANSI) code page
2012-08-01 20:03:49 +02:00
Richard Oudkerk 2240ac1eae Issue #15261: Stop os.stat(fd) crashing on Windows when fd not open. 2012-07-06 12:05:32 +01:00
Victor Stinner f7c5ae2257 Issue #13374: Deprecate os.getcwdb() on Windows 2011-11-16 23:43:07 +01:00
Victor Stinner 1ab6c2d2c2 Issue #13374: The Windows bytes API has been deprecated in the os module. Use
Unicode filenames instead of bytes filenames to not depend on the ANSI code
page anymore and to support any filename.
2011-11-15 22:27:41 +01:00
Florent Xicluna 87082ee14d Merged manually from 2.7 branch to 3.x trunk.
------------------------------------------------------------------------
  r81149 | florent.xicluna | 2010-05-13 23:40:01 +0200 (jeu. 13 mai 2010) | 2 lignes

  Better test skipping, with message in the log.
  ------------------------------------------------------------------------
  r81150 | florent.xicluna | 2010-05-13 23:41:05 +0200 (jeu. 13 mai 2010) | 2 lignes

  Improve test feedback to troubleshoot issue #8423 on OS X.
  ------------------------------------------------------------------------
  r81151 | florent.xicluna | 2010-05-14 01:46:48 +0200 (ven. 14 mai 2010) | 2 lignes

  Revert changeset r81150 which helped diagnose issue #8423 on some OS X buildbot.
  ------------------------------------------------------------------------
  r82056 | florent.xicluna | 2010-06-17 22:30:56 +0200 (jeu. 17 juin 2010) | 2 lignes

  Add few words about test.test_genericpath.CommonTest
  ------------------------------------------------------------------------
2010-08-09 17:18:05 +00:00
Ezio Melotti 5a3ef5b22a #9018: os.path.normcase() now raises a TypeError if the argument is not str or bytes. 2010-06-25 10:56:11 +00:00
R. David Murray b6f916d320 Fix verb tense in skip message. 2010-04-22 01:49:37 +00:00
Victor Stinner 1efde679ce Issue #8422, test_genericpath: skip the creation of a directory with an invalid
UTF name on Mac OS X because the OS deny it (the name have to be a valid UTF8
string).
2010-04-18 08:23:42 +00:00
Florent Xicluna 81c867c3fc Fix string-> bytes conversion on backport from 2.x. 2010-03-08 12:47:44 +00:00
Florent Xicluna e3ed2e02be Merge other tests from test_*path.py into test_genericpath.CommonTest, and do some cleanup. 2010-03-08 12:42:20 +00:00
Florent Xicluna c9c79784cf Merged revisions 78734-78735 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78734 | florent.xicluna | 2010-03-06 19:07:18 +0100 (sam, 06 mar 2010) | 2 lines

  Create test_genericpath.CommonTest and reuse it to test other path modules.
........
  r78735 | florent.xicluna | 2010-03-06 19:52:52 +0100 (sam, 06 mar 2010) | 2 lines

  Minor tweaking of previous r78734, and add a NEWS entry.
........
2010-03-08 12:24:53 +00:00