Commit Graph

74 Commits

Author SHA1 Message Date
Nick Coghlan 6b22f3fa17 Issue #10188 (partial resolution): tidy up some behaviour in the new tempfile.TemporaryDirectory context manager 2010-12-12 15:24:21 +00:00
Vinay Sajip 40e86f0df2 Fied typo 2010-12-10 09:11:23 +00:00
Vinay Sajip 129fd04440 test.support: Added TestHandler and Matcher classes for better support of assertions about logging. 2010-12-10 08:19:38 +00:00
Eric Smith 44588b45d2 More issue #10624: Add requires_IEEE_754 to __all__. 2010-12-04 17:12:41 +00:00
Eric Smith f24a0d90a9 Issue #10624: Move requires_IEEE_754 into test.support. I'll fix up other uses of it shortly. 2010-12-04 13:32:18 +00:00
Brian Curtin 52173d4959 Fix #9333. Expose os.symlink on Windows only when usable.
In order to create symlinks on Windows, SeCreateSymbolicLinkPrivilege
is an account privilege that is required to be held by the user. Not only
must the privilege be enabled for the account, the activated privileges for
the currently running application must be adjusted to enable the requested
privilege.

Rather than exposing an additional function to be called prior to the user's
first os.symlink call, we handle the AdjustTokenPrivileges Windows API call
internally and only expose os.symlink when the privilege escalation was
successful.

Due to the change of only exposing os.symlink when it's available, we can
go back to the original test skipping methods of checking via `hasattr`.
2010-12-02 18:29:18 +00:00
Antoine Pitrou 64474542eb PY_CFLAGS doesn't exist under Windows 2010-10-31 11:34:47 +00:00
Benjamin Peterson 65c66ab255 make gdb skip expected 2010-10-29 21:31:35 +00:00
Antoine Pitrou 31e08a4df6 Make check_warnings error messages more informative 2010-10-29 11:54:03 +00:00
Antoine Pitrou 5bc4fa7a49 Replace the "compiler" resource with the more generic "cpu", so
as to mark CPU-heavy tests.
2010-10-14 15:34:31 +00:00
Antoine Pitrou 1b03f2ca83 Inherit interpreter flags in parallel testing 2010-10-14 11:12:00 +00:00
Victor Stinner d24fc5d7c4 test_sys: Remove workaround #8611
It looks like it is no more needed: Python 3.2 is slowly able to support
non-ascii paths with an ascii locale.
2010-10-13 23:41:57 +00:00
Victor Stinner 8ce7df67de Issue #9819: fix TESTFN_UNENCODABLE for japanese code page 2010-09-10 11:19:59 +00:00
Antoine Pitrou 2673c5bf5e Also catch some gaierrors 2010-09-07 21:43:31 +00:00
Antoine Pitrou 8bc09039ed Improve transient_internet() again to detect more network errors,
and use it in test_robotparser. Fixes #8574.
2010-09-07 21:09:09 +00:00
Antoine Pitrou a88c83cbab Issue #8574: better implementation of test.support.transient_internet().
Original patch by Victor.
2010-09-07 20:42:19 +00:00
Victor Stinner c44abb127b Workaround issue #8611 in test_undecodable_code() of test_sys
Write test.support.workaroundIssue8611() function so it will be easier to
remove this workaround from all tests.
2010-08-20 16:52:14 +00:00
Victor Stinner 74a833fa96 Decompose TESTFN_UNICODE on Mac OS X 2010-08-18 21:06:23 +00:00
Victor Stinner d91df1a7a9 Improve PEP 383 tests (in test_os)
* Use the current filesystem encoding instead of always using utf-8
 * Enable the test on Mac OS X
 * Use TESTFN_UNENCODABLE and TESTFN_UNICODE instead of arbitrary filenames
 * To decode a filename, use strict error handler instead surrogateescape for
   mbcs encoding (on Windows)
 * Use TESTFN_UNENCODABLE (if available) for the directory name

Skip the test if no non-ascii filename can be created.
2010-08-18 10:56:19 +00:00
Nick Coghlan d26c18adcc Issue #8202: Set sys.argv[0] to -m rather than -c while searching for the module to execute. Also updates all the cmd_line_script tests to validate the setting of sys.path[0] and the current working directory 2010-08-17 13:06:11 +00:00
Victor Stinner a0241c8587 Fix TESTFN_UNENCODABLE of test.support on Mac OS X 2010-08-15 19:28:21 +00:00
Victor Stinner 03c9e1dbc2 Mac OS X denies unencodable filenames (invalid utf-8) 2010-08-14 17:35:20 +00:00
Victor Stinner 09c449c7de Fix a typo: TESTFN_UNENCODEABLE => TESTFN_UNENCODABLE 2010-08-13 22:23:24 +00:00
Victor Stinner b4b8eb9163 Oops, I did it again: add missing \ removed in previous commit 2010-08-13 13:47:18 +00:00
Victor Stinner 11fd4e962d Oops, create TESTFN_UNENCODEABLE from TEST_FN, not TESTFN_UNICODE
test_imp fails on Linux with C locale because TESTFN_UNICODE is not encodable
to ascii.
2010-08-13 13:45:00 +00:00
Victor Stinner 3d85a6fa04 Set TESTFN_UNENCODEABLE on non-Windows OSes
* Use 0xff byte on non-Windows OSes
 * mbcs is now really strict by default: i closed the issue #850997, so use the
   filesystem encoding and not Latin-1
 * Rename TESTFN_UNICODE_UNENCODEABLE to TESTFN_UNENCODEABLE
2010-08-13 13:02:04 +00:00
Antoine Pitrou 62f68ed31f Factor out stripping of interpreter debug output in test.support.strip_python_stderr() 2010-08-04 11:48:56 +00:00
Alexander Belopolsky 903396ee66 Set sys.modules[name] to None instead of 0 to block module import. 2010-07-13 14:50:16 +00:00
Brian Curtin d40e6f70a5 Implement #1578269. Patch by Jason R. Coombs.
Added Windows support for os.symlink when run on Windows 6.0 or greater,
aka Vista. Previous Windows versions will raise NotImplementedError
when trying to symlink.

Includes numerous test updates and additions to test_os, including
a symlink_support module because of the fact that privilege escalation
is required in order to run the tests to ensure that the user is able
to create symlinks. By default, accounts do not have the required
privilege, so the escalation code will have to be exposed later (or
documented on how to do so). I'll be following up with that work next.

Note that the tests use ctypes, which was agreed on during the PyCon
language summit.
2010-07-08 21:39:08 +00:00
Michael Foord 2d9c2d5ecd Fix error handling removing files in test.support.unlink 2010-05-04 22:29:10 +00:00
Victor Stinner f58087ba29 Issue #8533: revert r80694; try a different fix: regrtest uses backslashreplace
error handler for stdout to avoid UnicodeEncodeError (write non-ASCII character
to stdout using ASCII encoding)
2010-05-02 17:24:51 +00:00
Victor Stinner 0d80a5874a Issue #8533: Write tracebacks and failed tests to sys.stderr instead of
sys.stdout to avoid UnicodeEncodeError (use backslashreplace error handler)
2010-05-02 09:37:08 +00:00
Victor Stinner 45df820591 Merged revisions 80552-80556,80564-80566,80568-80571 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80552 | victor.stinner | 2010-04-27 23:46:03 +0200 (mar., 27 avril 2010) | 3 lines

  Issue #7449, part 1: fix test_support.py for Python compiled without thread
........
  r80553 | victor.stinner | 2010-04-27 23:47:01 +0200 (mar., 27 avril 2010) | 1 line

  Issue #7449, part 2: regrtest.py -j option requires thread support
........
  r80554 | victor.stinner | 2010-04-27 23:51:26 +0200 (mar., 27 avril 2010) | 9 lines

  Issue #7449 part 3, test_doctest: import trace module in test_coverage()

  Import trace module fail if the threading module is missing. test_coverage() is
  only used if test_doctest.py is used with the -c option. This commit allows to
  execute the test suite without thread support.

  Move "import trace" in test_coverage() and use
  test_support.import_module('trace').
........
  r80555 | victor.stinner | 2010-04-27 23:56:26 +0200 (mar., 27 avril 2010) | 6 lines

  Issue #7449, part 4: skip test_multiprocessing if thread support is disabled

  import threading after _multiprocessing to raise a more revelant error message:
  "No module named _multiprocessing". _multiprocessing is not compiled without
  thread support.
........
  r80556 | victor.stinner | 2010-04-28 00:01:24 +0200 (mer., 28 avril 2010) | 8 lines

  Issue #7449, part 5: split Test.test_open() of ctypes/test/test_errno.py

   * Split Test.test_open() in 2 functions: test_open() and test_thread_open()
   * Skip test_open() and test_thread_open() if we are unable to find the C
     library
   * Skip test_thread_open() if thread support is disabled
   * Use unittest.skipUnless(os.name == "nt", ...) on test_GetLastError()
........
  r80564 | victor.stinner | 2010-04-28 00:59:35 +0200 (mer., 28 avril 2010) | 4 lines

  Issue #7449, part 6: fix test_hashlib for missing threading module

  Move @test_support.reap_thread decorator from test_main() to test_threaded_hashing().
........
  r80565 | victor.stinner | 2010-04-28 01:01:29 +0200 (mer., 28 avril 2010) | 6 lines

  Issue #7449, part 7: simplify threading detection in test_capi

   * Skip TestPendingCalls if threading module is missing
   * Test if threading module is present or not, instead of test the presence of
     _testcapi._test_thread_state
........
  r80566 | victor.stinner | 2010-04-28 01:03:16 +0200 (mer., 28 avril 2010) | 4 lines

  Issue #7449, part 8: don't skip the whole test_asynchat if threading is missing

  TestFifo can be executed without the threading module
........
  r80568 | victor.stinner | 2010-04-28 01:14:58 +0200 (mer., 28 avril 2010) | 6 lines

  Issue #7449, part 9: fix test_xmlrpclib for missing threading module

   * Skip testcases using threads if threading module is missing
   * Use "http://" instead of URL in ServerProxyTestCase if threading is missing
     because URL is not set in this case
........
  r80569 | victor.stinner | 2010-04-28 01:33:58 +0200 (mer., 28 avril 2010) | 6 lines

  Partial revert of r80556 (Issue #7449, part 5, fix ctypes test)

  Rewrite r80556: the thread test have to be executed just after the test on
  libc_open() and so the test cannot be splitted in two functions (without
  duplicating code, and I don't want to duplicate code).
........
  r80570 | victor.stinner | 2010-04-28 01:51:16 +0200 (mer., 28 avril 2010) | 8 lines

  Issue #7449, part 10: test_cmd imports trace module using test_support.import_module()

  Use test_support.import_module() instead of import to raise a SkipTest
  exception if the import fail. Import trace fails if the threading module is
  missing.

  See also part 3: test_doctest: import trace module in test_coverage().
........
  r80571 | victor.stinner | 2010-04-28 01:55:59 +0200 (mer., 28 avril 2010) | 6 lines

  Issue #7449, last part (11): fix many tests if thread support is disabled

   * Use try/except ImportError or test_support.import_module() to import thread
     and threading modules
   * Add @unittest.skipUnless(threading, ...) to testcases using threads
........
2010-04-28 22:31:17 +00:00
Antoine Pitrou fec12fff0f Merged revisions 80314-80315 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r80314 | antoine.pitrou | 2010-04-21 21:28:03 +0200 (mer., 21 avril 2010) | 5 lines

  Issue #8484: Load all ciphers and digest algorithms when initializing
  the _ssl extension, such that verification of some SSL certificates
  doesn't fail because of an "unknown algorithm".
........
  r80315 | antoine.pitrou | 2010-04-21 21:36:23 +0200 (mer., 21 avril 2010) | 3 lines

  Forgot to add the sample certificate (followup to r80314)
........
2010-04-21 19:46:23 +00:00
Barry Warsaw 28a691b7fd PEP 3147 2010-04-17 00:19:56 +00:00
Benjamin Peterson a6590e8405 Merged revisions 79934 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79934 | philip.jenvey | 2010-04-10 14:39:07 -0500 (Sat, 10 Apr 2010) | 1 line

  adjust gc_collect for Jython
........
2010-04-11 21:22:10 +00:00
Florent Xicluna f089fd67fc Merged revisions 78982,78986 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78982 | florent.xicluna | 2010-03-15 15:00:58 +0100 (lun, 15 mar 2010) | 2 lines

  Remove py3k deprecation warnings from these Unicode tools.
........
  r78986 | florent.xicluna | 2010-03-15 19:08:58 +0100 (lun, 15 mar 2010) | 3 lines

  Issue #7783 and #7787: open_urlresource invalidates the outdated files from the local cache.
  Use this feature to fix test_normalization.
........
2010-03-19 14:25:03 +00:00
Florent Xicluna 53b506beda Merged revisions 79049 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r79049 | florent.xicluna | 2010-03-18 20:51:47 +0100 (jeu, 18 mar 2010) | 2 lines

  #8155: Preserve backward compatibility for test_support.check_warnings().  Add regression tests.
........
2010-03-18 20:00:57 +00:00
Collin Winter f2bf2b3ec4 Add some tests for ways users can change or shadow globals and builtins. 2010-03-17 00:41:56 +00:00
Florent Xicluna f15351d938 Merged revisions 78838-78839,78917,78919,78934,78937 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78838 | florent.xicluna | 2010-03-11 15:36:19 +0100 (jeu, 11 mar 2010) | 2 lines

  Issue #6472: The xml.etree package is updated to ElementTree 1.3.  The cElementTree module is updated too.
........
  r78839 | florent.xicluna | 2010-03-11 16:55:11 +0100 (jeu, 11 mar 2010) | 2 lines

  Fix repr of tree Element on windows.
........
  r78917 | florent.xicluna | 2010-03-13 12:18:49 +0100 (sam, 13 mar 2010) | 2 lines

  Move the xml test data to their own directory.
........
  r78919 | florent.xicluna | 2010-03-13 13:41:48 +0100 (sam, 13 mar 2010) | 2 lines

  Do not chdir when running test_xml_etree, and enhance the findfile helper.
........
  r78934 | florent.xicluna | 2010-03-13 18:56:19 +0100 (sam, 13 mar 2010) | 2 lines

  Update some parts of the xml.etree documentation.
........
  r78937 | florent.xicluna | 2010-03-13 21:30:15 +0100 (sam, 13 mar 2010) | 3 lines

  Add the keyword argument "method=None" to the .write() method and the tostring/tostringlist functions.
  Update the function, class and method signatures, according to the new convention.
........
2010-03-13 23:24:31 +00:00
Florent Xicluna b14930cd93 Only the parts which are relevant for 3.x branch.
Merged revisions 78757-78758,78769,78815 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78757 | florent.xicluna | 2010-03-07 13:14:25 +0100 (dim, 07 mar 2010) | 2 lines

  Fix some py3k warnings in the standard library.
........
  r78758 | florent.xicluna | 2010-03-07 13:18:33 +0100 (dim, 07 mar 2010) | 4 lines

  Issue #7849: Now the utility ``check_warnings`` verifies if the warnings are
  effectively raised.  A new utility ``check_py3k_warnings`` deals with py3k warnings.
........
  r78769 | florent.xicluna | 2010-03-07 20:14:12 +0100 (dim, 07 mar 2010) | 2 lines

  Refresh the documentation for the test.test_support module.
........
  r78815 | florent.xicluna | 2010-03-09 20:57:01 +0100 (mar, 09 mar 2010) | 2 lines

  #7772: Fix test_py3kwarn. Now the test suite could pass with "-3" flag.
........
2010-03-13 15:26:44 +00:00
Ezio Melotti 184bdfb03a Merged revisions 78136 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r78136 | ezio.melotti | 2010-02-10 23:40:33 +0200 (Wed, 10 Feb 2010) | 1 line

  #7712: add a temp_cwd context manager to test_support and use it in regrtest to run all the tests in a temporary directory, saving the original CWD in test_support.SAVEDCWD. Thanks to Florent Xicluna who helped with the patch.
........
2010-02-18 09:37:05 +00:00
Brett Cannon ddb5e70e02 Merged revisions 77956-77957 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77956 | brett.cannon | 2010-02-03 14:11:54 -0800 (Wed, 03 Feb 2010) | 1 line

  Update a docstring to suggest using importlib.import_module instead of calling __import__ directly.
........
  r77957 | brett.cannon | 2010-02-03 14:13:44 -0800 (Wed, 03 Feb 2010) | 1 line

  Fix a typo in a docstring introduced in r77956.
........
2010-02-03 22:16:11 +00:00
Ezio Melotti b19f43dbf0 Merged revisions 77729 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r77729 | ezio.melotti | 2010-01-24 22:48:35 +0200 (Sun, 24 Jan 2010) | 1 line

  remove archaic functions from test_support
........
2010-01-24 20:59:24 +00:00
Antoine Pitrou 060cee221b Issue #6551: test_zipimport could import and then destroy some modules of
the encodings package, which would make other tests fail further down
the road because the internally cached encoders and decoders would point
to empty global variables.
2009-11-13 16:29:04 +00:00
Antoine Pitrou fd0680b19d Merged revisions 76037 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r76037 | antoine.pitrou | 2009-11-01 23:02:03 +0100 (dim., 01 nov. 2009) | 3 lines

  Use a custom timeout in test_support.open_urlresource.
........
2009-11-01 22:13:48 +00:00
Antoine Pitrou 65c9c6426b Merged revisions 75958 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r75958 | antoine.pitrou | 2009-10-30 18:07:08 +0100 (ven., 30 oct. 2009) | 7 lines

  Issue #7222: Make thread "reaping" more reliable so that reference
  leak-chasing test runs give sensible results. The previous method of
  reaping threads could return successfully while some Thread objects were
  still referenced. This also introduces a new private function:
  :func:hread._count().
........
2009-10-30 17:25:12 +00:00
R. David Murray 723357e014 Merged revisions 75528 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r75528 | r.david.murray | 2009-10-19 13:53:58 -0400 (Mon, 19 Oct 2009) | 4 lines

  Clarify error report message, and don't recommend running in verbose
  mode for more information if we are already running in verbose mode.
........
2009-10-19 18:06:17 +00:00
Nick Coghlan 6ead552b47 Note that a number of the changes listed below were not applicable to the Py3k branch, and hence the corresponding
files are unchanged in this checkin. This checkin is also the first time the environment checking in regrtest has
been forward ported to the Py3k branch.

This checkin causes test_xmlrpc to fail - see issue 7165 (it's a bug in the 3.x version of xmlrpc.server)
I am also getting a failure in test_telnetlib, but it isn't clear yet if that is due to these changes.

Recorded merge of revisions 75400-75401,75404,75406,75414,75416,75422,75425-75428,75435,75439,75441-75444,75447-75449,75451-75453,75455-75458,75460-75469,75471-75473,75475-75477,75479-75481,75483,75486-75489 via svnmerge from
svn+ssh://pythondev@svn.python.org/python/trunk

........
  r75400 | r.david.murray | 2009-10-14 23:58:07 +1000 (Wed, 14 Oct 2009) | 6 lines

  Enhanced Issue 7058 patch, which will not be backported.  Refactors the
  code, adds checks for stdin/out/err, cwd, and sys.path, and adds a new
  section in the summary for tests that modify the environment (thanks to
  Ezio Melotti for that suggestion).
........
  r75453 | nick.coghlan | 2009-10-17 16:33:05 +1000 (Sat, 17 Oct 2009) | 1 line

  Correctly restore sys.stdout in test_descr
........
  r75456 | nick.coghlan | 2009-10-17 17:30:40 +1000 (Sat, 17 Oct 2009) | 1 line

  Enhancement to the new environment checking code to print the changed items under -vv. Also includes a small tweak to allow underscores in the names of resources.
........
  r75457 | nick.coghlan | 2009-10-17 17:34:27 +1000 (Sat, 17 Oct 2009) | 1 line

  Formatting tweak so that before and after values are vertically aligned
........
  r75458 | nick.coghlan | 2009-10-17 18:21:21 +1000 (Sat, 17 Oct 2009) | 1 line

  Check and revert expected sys.path alterations
........
  r75461 | nick.coghlan | 2009-10-18 00:40:54 +1000 (Sun, 18 Oct 2009) | 1 line

  Restore original sys.path when running TTK tests
........
  r75462 | nick.coghlan | 2009-10-18 01:09:41 +1000 (Sun, 18 Oct 2009) | 1 line

  Don't invoke reload(sys) and use StringIO objects instead of real files to capture stdin and stdout when needed (ensures all sys attributes remain unmodified after test_xmlrpc runs)
........
  r75463 | nick.coghlan | 2009-10-18 01:23:08 +1000 (Sun, 18 Oct 2009) | 1 line

  Revert changes made to environment in test_httpservers
........
  r75465 | nick.coghlan | 2009-10-18 01:45:52 +1000 (Sun, 18 Oct 2009) | 1 line

  Move restoration of the os.environ object into the context manager where it belongs
........
  r75466 | nick.coghlan | 2009-10-18 01:48:16 +1000 (Sun, 18 Oct 2009) | 1 line

  Also check and restore identity of sys.path, sys.argv and os.environ rather than just their values (this picked up a few more misbehaving tests)
........
  r75467 | nick.coghlan | 2009-10-18 01:57:42 +1000 (Sun, 18 Oct 2009) | 1 line

  Avoid replacing existing modules and sys.path in import tests
........
  r75468 | nick.coghlan | 2009-10-18 02:19:51 +1000 (Sun, 18 Oct 2009) | 1 line

  Don't replace sys.path in test_site
........
  r75481 | nick.coghlan | 2009-10-18 15:38:48 +1000 (Sun, 18 Oct 2009) | 1 line

  Using CleanImport to revert a reload of the os module doesn't work due to function registrations in copy_reg. The perils of reloading modules even for tests...
........
  r75486 | nick.coghlan | 2009-10-18 20:29:10 +1000 (Sun, 18 Oct 2009) | 1 line

  Silence a deprecation warning by using the appropriate replacement construct
........
  r75489 | nick.coghlan | 2009-10-18 20:56:21 +1000 (Sun, 18 Oct 2009) | 1 line

  Restore sys.path in test_tk
........
2009-10-18 13:19:33 +00:00
Alexandre Vassalotti df4ff08be4 Fix open_urlresource() to pass its arguments to open() when the resource is cached.
This fixes the failure of test_normalization on the Windows buildbots,
where the Normalization.txt file was read as a MBCS text file, instead
as a UTF-8 one.
2009-07-22 00:19:57 +00:00