summaryrefslogtreecommitdiffstats
path: root/Lib/test
Commit message (Collapse)AuthorAgeFilesLines
* merge 3.3 (#23369)Benjamin Peterson2015-02-011-1/+8
|\
| * fix possible overflow in encode_basestring_ascii (closes #23369)Benjamin Peterson2015-02-011-1/+8
| |
| * Issue #23055: Fixed a buffer overflow in PyUnicode_FromFormatV. AnalysisSerhiy Storchaka2015-01-271-42/+119
| | | | | | | | and fix by Guido Vranken.
* | Issue #23353: Fix the exception handling of generators in PyEval_EvalFrameEx().Victor Stinner2015-01-311-0/+109
| | | | | | | | | | | | | | At entry, save or swap the exception state even if PyEval_EvalFrameEx() is called with throwflag=0. At exit, the exception state is now always restored or swapped, not only if why is WHY_YIELD or WHY_RETURN. Patch co-written with Antoine Pitrou.
* | Issue #22765: Fixed test_gdb failures. Supressed unexpected gdb output.Serhiy Storchaka2015-01-311-0/+19
| | | | | | | | Patch by Bohuslav Kabrda.
* | Issue #23347, asyncio: send_signal(), terminate(), kill() don't check if theVictor Stinner2015-01-301-16/+0
| | | | | | | | | | | | | | transport was closed. The check broken a Tulip example and this limitation is arbitrary. Check if _proc is None should be enough. Enhance also close(): do nothing when called the second time.
* | asyncio: Fix ResourceWarning in test_subprocess.test_proc_exit()Victor Stinner2015-01-291-0/+2
| |
* | asyncio: sync with TulipVictor Stinner2015-01-292-17/+83
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Issue #23347: send_signal(), kill() and terminate() methods of BaseSubprocessTransport now check if the transport was closed and if the process exited. Issue #23347: Refactor creation of subprocess transports. Changes on BaseSubprocessTransport: * Add a wait() method to wait until the child process exit * The constructor now accepts an optional waiter parameter. The _post_init() coroutine must not be called explicitly anymore. It makes subprocess transports closer to other transports, and it gives more freedom if we want later to change completly how subprocess transports are created. * close() now kills the process instead of kindly terminate it: the child process may ignore SIGTERM and continue to run. Call explicitly terminate() and wait() if you want to kindly terminate the child process. * close() now logs a warning in debug mode if the process is still running and needs to be killed * _make_subprocess_transport() is now fully asynchronous again: if the creation of the transport failed, wait asynchronously for the process eixt. Before the wait was synchronous. This change requires close() to *kill*, and not terminate, the child process. * Remove the _kill_wait() method, replaced with a more agressive close() method. It fixes _make_subprocess_transport() on error. BaseSubprocessTransport.close() calls the close() method of pipe transports, whereas _kill_wait() closed directly pipes of the subprocess.Popen object without unregistering file descriptors from the selector (which caused severe bugs). These changes simplifies the code of subprocess.py.
* | Issue #23243, asyncio: Emit a ResourceWarning when an event loop or a transportVictor Stinner2015-01-292-5/+8
| | | | | | | | is not explicitly closed. Close also explicitly transports in test_sslproto.
* | Issue #22668: Remove endianness assumption in test.Stefan Krah2015-01-291-3/+5
| |
* | Issue #22668: Ensure that format strings survive slicing after casting.Stefan Krah2015-01-291-0/+19
| |
* | asyncio: sync with TulipVictor Stinner2015-01-292-31/+35
| | | | | | | | | | | | | | | | | | * Cleanup gather(): use cancelled() method instead of using private Future attribute * Fix _UnixReadPipeTransport and _UnixWritePipeTransport. Only start reading when connection_made() has been called. * Issue #23333: Fix BaseSelectorEventLoop._accept_connection(). Close the transport on error. In debug mode, log errors using call_exception_handler()
* | asyncio: sync with TulipVictor Stinner2015-01-291-1/+14
| | | | | | | | | | | | | | | | | | | | * _SelectorTransport constructor: extra parameter is now optional * Fix _SelectorDatagramTransport constructor. Only start reading after connection_made() has been called. * Fix _SelectorSslTransport.close(). Don't call protocol.connection_lost() if protocol.connection_made() was not called yet: if the SSL handshake failed or is still in progress. The close() method can be called if the creation of the connection is cancelled, by a timeout for example.
* | asyncio: Fix _SelectorSocketTransport constructorVictor Stinner2015-01-281-5/+11
| | | | | | | | | | Only start reading when connection_made() has been called: protocol.data_received() must not be called before protocol.connection_made().
* | asyncio: Fix SSLProtocol.eof_received()Victor Stinner2015-01-281-11/+29
| | | | | | | | Wake-up the waiter if it is not done yet.
* | asyncio: sync with TulipVictor Stinner2015-01-271-0/+5
| | | | | | | | | | | | | | | | | | | | * Remove unused SSLProtocol._closing attribute * test_sslproto: skip test if ssl module is missing * Python issue #23208: Don't use the traceback of the current handle if we already know the traceback of the source. The handle may be more revelant, but having 3 tracebacks (handle, source, exception) becomes more difficult to read. The handle may be preferred later but it requires more work to make this choice.
* | Issue #23293, asyncio: Rewrite IocpProactor.connect_pipe() as a coroutineVictor Stinner2015-01-261-0/+13
| | | | | | | | | | | | | | Use a coroutine with asyncio.sleep() instead of call_later() to ensure that the schedule call is cancelled. Add also a unit test cancelling connect_pipe().
* | Issue #14099: Backout changeset e5bb3044402b (except adapted tests).Serhiy Storchaka2015-01-261-61/+55
| |
* | Issue #18518: timeit now rejects statements which can't be compiled outsideSerhiy Storchaka2015-01-261-0/+12
| | | | | | | | a function or a loop (e.g. "return" or "break").
* | Issue #23094: Fixed readline with frames in Python implementation of pickle.Serhiy Storchaka2015-01-261-0/+8
| |
* | Issue #7665: Fixed tests test_ntpath and test_urllib2 when ran in theSerhiy Storchaka2015-01-262-4/+5
| | | | | | | | directory containing a backslash.
* | Issue #23268: Fixed bugs in the comparison of ipaddress classes.Serhiy Storchaka2015-01-261-5/+42
| |
* | Issue #21408: The default __ne__() now returns NotImplemented if __eq__()Serhiy Storchaka2015-01-262-6/+63
| | | | | | | | returned NotImplemented. Removed incorrect implementations of __ne__().
* | handle headers with no key (closes #19996)Benjamin Peterson2015-01-262-0/+16
| | | | | | | | Patch by Cory Benfield.
* | Increase http.client.HTTPConnection test coverage.Senthil Kumaran2015-01-251-25/+42
| | | | | | | | | | Added a new tunnel test to verify setting of _tunnel_host, _tunnel_port, _tunnel_headers attributes on HTTPConnection object.
* | revert 7b833bd1f509. I misread the side effect that the code was triggering.Gregory P. Smith2015-01-231-2/+4
| | | | | | | | | | *any* kwarg supplied to _assert_python causes it to not append -E to the command line flags so without='-E' does effectively work.
* | Remove the unimplemented but ignored without='-E' parameters being passed toGregory P. Smith2015-01-231-4/+2
| | | | | | | | | | | | script_helper.assert_python_failure(). No such feature has ever existed, thus it doesn't do what the comment claims. (It does add a 'without' variable to the environment of the child process but that was not intended)
* | Only pass -E to the child interpreter if our interpreter was running in thatGregory P. Smith2015-01-231-7/+15
| | | | | | | | | | | | | | | | | | | | mode. Explicitly remove the PYTHONFAULTHANDLER environment variable before launching a child interpreter when its presence would impact the test (the reason -E was being used in the first place). This enables running the test in an environment where other Python environment variables must be set in order for things to run (such as using PYTHONHOME to tell an embedded interpreter where it should think it lives).
* | Break up TestCommandLine.test_env_var into four distinct tests.Gregory P. Smith2015-01-221-3/+5
| |
* | Issue #23009: Add missing "import sys" in test_selectorsVictor Stinner2015-01-221-0/+1
| |
* | Issue #23009: Skip test_selectors.test_empty_select() on WindowsVictor Stinner2015-01-221-0/+4
| |
* | asyncio: pyflakes, remove unused importVictor Stinner2015-01-211-9/+1
| | | | | | | | tests: Remove unused function; inline another function
* | asyncio: Enhance BaseProactorEventLoop._loop_self_reading()Victor Stinner2015-01-211-2/+3
| | | | | | | | | | | | | | | | * Handle correctly CancelledError: just exit * On error, log the exception and exit Don't try to close the event loop, it is probably running and so it cannot be closed.
* | Add the command line to the AssertionError raised by test.script_helper'sGregory P. Smith2015-01-212-2/+38
| | | | | | | | | | | | | | Python subprocess failure assertion error messages for easier debugging. Adds a unittest for test.script_helper to confirm that this code works as it is otherwise uncovered by an already passing test suite that uses it. :)
* | Issue #23280: Fix docstrings for binascii.(un)hexlifyZachary Ware2015-01-201-1/+3
| |
* | Issue #23181: More "codepoint" -> "code point".Serhiy Storchaka2015-01-185-7/+7
| |
* | Issue #23211: Fix patch for 3.4 differences.Ned Deily2015-01-181-3/+3
| |
* | Issue #23211: Workaround test_logging failure on some OS X 10.6 systems:Ned Deily2015-01-181-2/+2
| | | | | | | | | | getaddrinfo("localhost") can fail depending on the name server configuration, use "127.0.0.0" instead.
* | capitialize "HttpOnly" and "Secure" as they appear in the standard and other ↵Benjamin Peterson2015-01-171-2/+2
| | | | | | | | | | | | impls (closes #23250) Patch by Jon Dufresne.
* | Issue #22685: Fix test_pause_reading() of asyncio/test_subprocessVictor Stinner2015-01-151-2/+12
| | | | | | | | | | | | | | Override the connect_read_pipe() method of the loop to mock immediatly pause_reading() and resume_reading() methods. The test failed randomly on FreeBSD 9 buildbot and on Windows using trollius.
* | Closes #23219: cancelling asyncio.wait_for() now cancels the taskVictor Stinner2015-01-151-0/+27
| |
* | asyncio: Close transports in testsVictor Stinner2015-01-154-3/+15
| | | | | | | | | | | | | | | | | | * Use test_utils.run_briefly() to execute pending calls to really close transports * sslproto: mock also _SSLPipe.shutdown(), it's need to close the transport * pipe test: the test doesn't close explicitly the PipeHandle, so ignore the warning instead * test_popen: use the context manager ("with p:") to explicitly close pipes
* | Issue #23243: Close explicitly transports in asyncio testsVictor Stinner2015-01-153-277/+226
| |
* | Issue #23243: Close explicitly event loops in asyncio testsVictor Stinner2015-01-153-1/+20
| |
* | Issue #23243: Fix asyncio._UnixWritePipeTransport.close()Victor Stinner2015-01-151-0/+3
| | | | | | | | | | Do nothing if the transport is already closed. Before it was not possible to close the transport twice.
* | asyncio: sync with TulipVictor Stinner2015-01-145-0/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * PipeHandle now uses None instead of -1 for a closed handle * Sort imports in windows_utils. * Fix test_events on Python older than 3.5. Skip SSL tests on the ProactorEventLoop if ssl.MemoryIO is missing * Fix BaseEventLoop._create_connection_transport(). Close the transport if the creation of the transport (if the waiter) gets an exception. * _ProactorBasePipeTransport now sets _sock to None when the transport is closed. * Fix BaseSubprocessTransport.close(). Ignore pipes for which the protocol is not set yet (still equal to None). * TestLoop.close() now calls the close() method of the parent class (BaseEventLoop). * Cleanup BaseSelectorEventLoop: create the protocol on a separated line for readability and ease debugging. * Fix BaseSubprocessTransport._kill_wait(). Set the _returncode attribute, so close() doesn't try to terminate the process. * Tests: explicitly close event loops and transports * UNIX pipe transports: add closed/closing in repr(). Add "closed" or "closing" state in the __repr__() method of _UnixReadPipeTransport and _UnixWritePipeTransport classes.
* | Issue #23197, asyncio: On SSL handshake failure, check if the waiter isVictor Stinner2015-01-142-4/+61
| | | | | | | | | | | | | | cancelled before setting its exception. * Add unit tests for this case. * Cleanup also sslproto.py
* | Python issue #23173: sync with TulipVictor Stinner2015-01-141-0/+36
| | | | | | | | | | | | | | | | * If an exception is raised during the creation of a subprocess, kill the subprocess (close pipes, kill and read the return status). Log an error in such case. * Fix SubprocessStreamProtocol.connection_made() to handle cancelled waiter. Add unit test cancelling subprocess methods.
* | Issue #22560: New SSL implementation based on ssl.MemoryBIOVictor Stinner2015-01-132-11/+53
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new SSL implementation is based on the new ssl.MemoryBIO which is only available on Python 3.5. On Python 3.4 and older, the legacy SSL implementation (using SSL_write, SSL_read, etc.) is used. The proactor event loop only supports the new implementation. The new asyncio.sslproto module adds _SSLPipe, SSLProtocol and _SSLProtocolTransport classes. _SSLPipe allows to "wrap" or "unwrap" a socket (switch between cleartext and SSL/TLS). Patch written by Antoine Pitrou. sslproto.py is based on gruvi/ssl.py of the gruvi project written by Geert Jansen. This change adds SSL support to ProactorEventLoop on Python 3.5 and newer! It becomes also possible to implement STARTTTLS: switch a cleartext socket to SSL.
* | Tulip issue 184: Fix test_pipe() on WindowsVictor Stinner2015-01-131-1/+2
| | | | | | | | Pass explicitly the event loop to StreamReaderProtocol.