Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gh-119050: Add XML support to libregrtest refleak checker #119148

Merged
merged 2 commits into from
May 20, 2024

Conversation

vstinner
Copy link
Member

@vstinner vstinner commented May 18, 2024

regrtest test runner: Add XML support to the refleak checker (-R option).

  • run_unittest() now stores XML elements as string, rather than objects, in support.junit_xml_list.
  • runtest_refleak() now saves/restores XML strings before/after checking for reference leaks. Save XML into a temporary file.

regrtest test runner: Add XML support to the refleak checker
(-R option).

* run_unittest() now stores XML elements as string, rather than
  objects, in support.junit_xml_list.
* runtest_refleak() now saves/restores XML strings before/after
  checking for reference leaks. Save XML into a temporary file.
@vstinner
Copy link
Member Author

@Eclips4 @serhiy-storchaka: Would you mind to review my change?

When tests are run in parallel, each process is run in its own temporary directory. The temporary XML file is simply created in the current working directory. There is no risk of overriding the file between two processes.

@Eclips4
Copy link
Member

Eclips4 commented May 18, 2024

Thanks Victor for writing this PR!

I've tested it locally and it seems there's something wrong:

./python.exe -m test --junit-xml xml.out -R 3:3 -j 8
... Many lines
Traceback (most recent call last):
  File "/Users/admin/Projects/cpython/Lib/runpy.py", line 198, in _run_module_as_main
    return _run_code(code, main_globals, None,
                     "__main__", mod_spec)
  File "/Users/admin/Projects/cpython/Lib/runpy.py", line 88, in _run_code
    exec(code, run_globals)
    ~~~~^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/__main__.py", line 2, in <module>
    main(_add_python_opts=True)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 739, in main
    Regrtest(ns, _add_python_opts=_add_python_opts).main(tests=tests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 731, in main
    exitcode = self.run_tests(selected, tests)
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 568, in run_tests
    return self._run_tests(selected, tests)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 528, in _run_tests
    self._run_tests_mp(runtests, self.num_workers)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 426, in _run_tests_mp
    RunWorkers(num_workers, runtests, self.logger, self.results).run()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/run_workers.py", line 600, in run
    result = self._process_result(item)
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/run_workers.py", line 571, in _process_result
    self.results.accumulate_result(result, self.runtests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/results.py", line 132, in accumulate_result
    self.add_junit(xml_data)
    ~~~~~~~~~~~~~~^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/results.py", line 165, in add_junit
    self.testsuite_xml.append(ET.fromstring(e))
                              ~~~~~~~~~~~~~^^^
  File "/Users/admin/Projects/cpython/Lib/xml/etree/ElementTree.py", line 1343, in XML
    return parser.close()
           ~~~~~~~~~~~~^^
xml.etree.ElementTree.ParseError: no element found: line 1, column 5239

Full output:

./python.exe -m test --junit-xml out.xml -R 3:3 -j 8
== CPython 3.14.0a0 (heads/regrtest_xml:30ee2285ca, May 18 2024, 22:43:31) [Clang 15.0.0 (clang-1500.3.9.4)]
== macOS-14.5-arm64-arm-64bit-Mach-O little-endian
== Python build: debug
== cwd: /Users/admin/Projects/cpython/build/test_python_worker_21561æ
== CPU count: 8
== encodings: locale=UTF-8 FS=utf-8
== resources: all test resources are disabled, use -u option to unskip tests

Using random seed: 360681540
0:00:00 load avg: 5.52 Run 477 tests in parallel using 8 worker processes
0:00:00 load avg: 5.52 [  1/477] test.test_asyncio.test_buffered_proto passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:00 load avg: 5.52 [  2/477] test.test_asyncio.test_futures2 passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ...
0:00:01 load avg: 5.52 [  3/477] test.test_asyncio.test_context passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:01 load avg: 5.52 [  4/477] test.test_asyncio.test_pep492 passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ..1
test.test_asyncio.test_pep492 leaked [0, 0, 1] memory blocks, sum=1 (this is fine)
0:00:02 load avg: 5.52 [  5/477] test.test_asyncio.test_protocols passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:03 load avg: 5.52 [  6/477] test.test_asyncio.test_proactor_events passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:04 load avg: 5.64 [  7/477] test.test_asyncio.test_runners passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:06 load avg: 5.64 [  8/477] test.test_asyncio.test_selector_events passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ...
0:00:06 load avg: 5.64 [  9/477] test.test_asyncio.test_queues passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:06 load avg: 5.64 [ 10/477] test.test_asyncio.test_eager_task_factory passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 .1.
test.test_asyncio.test_eager_task_factory leaked [-1, 1, -1] memory blocks, sum=-1 (this is fine)
0:00:09 load avg: 5.91 [ 11/477] test.test_asyncio.test_server passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:09 load avg: 5.91 [ 12/477] test.test_asyncio.test_locks passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:13 load avg: 5.91 [ 13/477] test.test_asyncio.test_base_events passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:15 load avg: 5.76 [ 14/477] test.test_asyncio.test_streams passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:18 load avg: 5.76 [ 15/477] test.test_asyncio.test_sendfile passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ...
test.test_asyncio.test_sendfile leaked [0, 0, -1] memory blocks, sum=-1 (this is fine)
0:00:21 load avg: 5.38 [ 16/477] test.test_asyncio.test_futures passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:21 load avg: 5.38 [ 17/477] test.test_asyncio.test_threads passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ...
0:00:23 load avg: 5.38 [ 18/477] test.test_asyncio.test_sock_lowlevel passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ..1
test.test_asyncio.test_sock_lowlevel leaked [-1, 0, 1] memory blocks, sum=0 (this is fine)
0:00:23 load avg: 5.38 [ 19/477] test.test_asyncio.test_transports passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:24 load avg: 5.19 [ 20/477] test.test_asyncio.test_timeouts passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:28 load avg: 5.19 [ 21/477] test.test_asyncio.test_unix_events passed
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX2 ...
0:00:28 load avg: 5.19 [ 22/477] test.test_asyncio.test_windows_events skipped
test.test_asyncio.test_windows_events skipped -- Windows only
0:00:29 load avg: 5.01 [ 23/477] test.test_asyncio.test_windows_utils skipped
test.test_asyncio.test_windows_utils skipped -- Windows only
0:00:30 load avg: 5.01 [ 24/477] test.test_asyncio.test_waitfor passed -- running (1): test.test_asyncio.test_events (30.7 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:34 load avg: 4.69 [ 25/477] test.test_asyncio.test_sslproto passed -- running (1): test.test_asyncio.test_events (34.5 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX1 ...
0:00:49 load avg: 5.40 [ 26/477] test.test_asyncio.test_ssl passed (42.4 sec) -- running (4): test.test_asyncio.test_subprocess (36.0 sec), test.test_asyncio.test_tasks (30.9 sec), test.test_asyncio.test_events (49.3 sec), test.test_asyncio.test_taskgroups (34.0 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:52 load avg: 5.40 [ 27/477] test.test_asyncio.test_taskgroups passed (37.1 sec) -- running (3): test.test_asyncio.test_subprocess (39.1 sec), test.test_asyncio.test_tasks (34.0 sec), test.test_asyncio.test_events (52.4 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:00:53 load avg: 5.40 [ 28/477] test.test_concurrent_futures.test_future passed -- running (3): test.test_asyncio.test_subprocess (39.7 sec), test.test_asyncio.test_tasks (34.6 sec), test.test_asyncio.test_events (53.0 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ..1
test.test_concurrent_futures.test_future leaked [0, 0, 1] memory blocks, sum=1 (this is fine)
0:00:59 load avg: 6.38 [ 29/477] test.test_concurrent_futures.test_init passed -- running (4): test.test_asyncio.test_subprocess (45.9 sec), test.test_concurrent_futures.test_as_completed (30.1 sec), test.test_asyncio.test_tasks (40.8 sec), test.test_asyncio.test_events (59.2 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
/Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-cxgv2mh2', '/mp-bmtx0jx_', '/mp-0cxkxijc', '/mp-9__vmdga', '/mp-ctcuaahn', '/mp-xssatz4s'}
  warnings.warn(
X/Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-s_enah44', '/mp-92ulzzud', '/mp-0fnfaqv4', '/mp-_hl3uzp0', '/mp-ywdk8v9k', '/mp-72k_lz88'}
  warnings.warn(
X/Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-0rtjl_xk', '/mp-q2tbv__y', '/mp-k3lx8xya', '/mp-hkvp6rl_', '/mp-y6k9n8u0', '/mp-oa7we0mx'}
  warnings.warn(
./Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-fte3vwka', '/mp-19nou5dh', '/mp-3heiifww', '/mp-v05j4urq', '/mp-05bvy6q7', '/mp-ol3d1zk1'}
  warnings.warn(
 1/Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-ojy6xkih', '/mp-xef7sw_l', '/mp-m57s4dho', '/mp-huw80dz1', '/mp-es7s4o_w', '/mp-eqkb2w9q'}
  warnings.warn(
2/Users/admin/Projects/cpython/Lib/multiprocessing/resource_tracker.py:276: UserWarning: resource_tracker: There appear to be 6 leaked semaphore objects to clean up at shutdown: {'/mp-51pdt_8k', '/mp-fvj1a4zb', '/mp-2y7_8yp0', '/mp-euv_kj0d', '/mp-szhgpu23', '/mp-7or6gaz1'}
  warnings.warn(
.
test.test_concurrent_futures.test_init leaked [1, 2, 0] memory blocks, sum=3 (this is fine)
0:01:01 load avg: 6.38 [ 30/477] test.test_concurrent_futures.test_thread_pool passed -- running (5): test.test_asyncio.test_subprocess (48.4 sec), test.test_concurrent_futures.test_as_completed (32.7 sec), test.test_asyncio.test_tasks (43.3 sec), test.test_asyncio.test_events (1 min 1 sec), test.test_concurrent_futures.test_deadlock (31.0 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:05 load avg: 7.87 [ 31/477] test.test_asyncio.test_subprocess passed (52.2 sec) -- running (4): test.test_concurrent_futures.test_as_completed (36.5 sec), test.test_asyncio.test_tasks (47.2 sec), test.test_asyncio.test_events (1 min 5 sec), test.test_concurrent_futures.test_deadlock (34.9 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:06 load avg: 7.87 [ 32/477] test.test_future_stmt.test_future passed -- running (4): test.test_concurrent_futures.test_as_completed (37.5 sec), test.test_asyncio.test_tasks (48.2 sec), test.test_asyncio.test_events (1 min 6 sec), test.test_concurrent_futures.test_deadlock (35.9 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:06 load avg: 7.87 [ 33/477] test.test_future_stmt.test_future_flags passed -- running (4): test.test_concurrent_futures.test_as_completed (37.9 sec), test.test_asyncio.test_tasks (48.6 sec), test.test_asyncio.test_events (1 min 6 sec), test.test_concurrent_futures.test_deadlock (36.2 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:07 load avg: 7.87 [ 34/477] test.test_future_stmt.test_future_multiple_features passed -- running (4): test.test_concurrent_futures.test_as_completed (38.2 sec), test.test_asyncio.test_tasks (48.8 sec), test.test_asyncio.test_events (1 min 7 sec), test.test_concurrent_futures.test_deadlock (36.5 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:07 load avg: 7.87 [ 35/477] test.test_future_stmt.test_future_multiple_imports passed -- running (4): test.test_concurrent_futures.test_as_completed (38.5 sec), test.test_asyncio.test_tasks (49.2 sec), test.test_asyncio.test_events (1 min 7 sec), test.test_concurrent_futures.test_deadlock (36.9 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:07 load avg: 7.87 [ 36/477] test.test_future_stmt.test_future_single_import passed -- running (4): test.test_concurrent_futures.test_as_completed (38.8 sec), test.test_asyncio.test_tasks (49.5 sec), test.test_asyncio.test_events (1 min 7 sec), test.test_concurrent_futures.test_deadlock (37.1 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:07 load avg: 7.87 [ 37/477] test.test_gdb.test_backtrace skipped -- running (4): test.test_concurrent_futures.test_as_completed (38.9 sec), test.test_asyncio.test_tasks (49.6 sec), test.test_asyncio.test_events (1 min 7 sec), test.test_concurrent_futures.test_deadlock (37.3 sec)
test.test_gdb.test_backtrace skipped -- Couldn't find gdb program on the path: [Errno 2] No such file or directory: 'gdb'
0:01:08 load avg: 7.87 [ 38/477] test.test_gdb.test_cfunction skipped -- running (4): test.test_concurrent_futures.test_as_completed (39.1 sec), test.test_asyncio.test_tasks (49.7 sec), test.test_asyncio.test_events (1 min 8 sec), test.test_concurrent_futures.test_deadlock (37.4 sec)
test.test_gdb.test_cfunction skipped -- Couldn't find gdb program on the path: [Errno 2] No such file or directory: 'gdb'
0:01:08 load avg: 7.87 [ 39/477] test.test_gdb.test_cfunction_full skipped -- running (4): test.test_concurrent_futures.test_as_completed (39.3 sec), test.test_asyncio.test_tasks (50.0 sec), test.test_asyncio.test_events (1 min 8 sec), test.test_concurrent_futures.test_deadlock (37.7 sec)
test.test_gdb.test_cfunction_full skipped -- Couldn't find gdb program on the path: [Errno 2] No such file or directory: 'gdb'
0:01:08 load avg: 7.87 [ 40/477] test.test_gdb.test_misc skipped -- running (4): test.test_concurrent_futures.test_as_completed (39.5 sec), test.test_asyncio.test_tasks (50.1 sec), test.test_asyncio.test_events (1 min 8 sec), test.test_concurrent_futures.test_deadlock (37.8 sec)
test.test_gdb.test_misc skipped -- Couldn't find gdb program on the path: [Errno 2] No such file or directory: 'gdb'
0:01:08 load avg: 7.87 [ 41/477] test.test_gdb.test_pretty_print skipped -- running (4): test.test_concurrent_futures.test_as_completed (39.7 sec), test.test_asyncio.test_tasks (50.4 sec), test.test_asyncio.test_events (1 min 8 sec), test.test_concurrent_futures.test_deadlock (38.1 sec)
test.test_gdb.test_pretty_print skipped -- Couldn't find gdb program on the path: [Errno 2] No such file or directory: 'gdb'
0:01:17 load avg: 7.74 [ 42/477] test.test_inspect.test_inspect passed -- running (4): test.test_concurrent_futures.test_as_completed (48.9 sec), test.test_asyncio.test_tasks (59.6 sec), test.test_asyncio.test_events (1 min 17 sec), test.test_concurrent_futures.test_deadlock (47.3 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
X4. ..1
test.test_inspect.test_inspect leaked [0, 0, 1] memory blocks, sum=1 (this is fine)
0:01:18 load avg: 7.74 [ 43/477] test.test_multiprocessing_fork.test_manager skipped -- running (4): test.test_concurrent_futures.test_as_completed (49.0 sec), test.test_asyncio.test_tasks (59.7 sec), test.test_asyncio.test_events (1 min 18 sec), test.test_concurrent_futures.test_deadlock (47.4 sec)
test.test_multiprocessing_fork.test_manager skipped -- test may crash on macOS (bpo-33725)
0:01:18 load avg: 7.74 [ 44/477] test.test_multiprocessing_fork.test_misc skipped -- running (4): test.test_concurrent_futures.test_as_completed (49.2 sec), test.test_asyncio.test_tasks (59.9 sec), test.test_asyncio.test_events (1 min 18 sec), test.test_concurrent_futures.test_deadlock (47.5 sec)
test.test_multiprocessing_fork.test_misc skipped -- test may crash on macOS (bpo-33725)
0:01:18 load avg: 7.74 [ 45/477] test.test_multiprocessing_fork.test_processes skipped -- running (4): test.test_concurrent_futures.test_as_completed (49.3 sec), test.test_asyncio.test_tasks (1 min), test.test_asyncio.test_events (1 min 18 sec), test.test_concurrent_futures.test_deadlock (47.7 sec)
test.test_multiprocessing_fork.test_processes skipped -- test may crash on macOS (bpo-33725)
0:01:18 load avg: 7.74 [ 46/477] test.test_multiprocessing_fork.test_threads skipped -- running (4): test.test_concurrent_futures.test_as_completed (49.7 sec), test.test_asyncio.test_tasks (1 min), test.test_asyncio.test_events (1 min 18 sec), test.test_concurrent_futures.test_deadlock (48.0 sec)
test.test_multiprocessing_fork.test_threads skipped -- test may crash on macOS (bpo-33725)
0:01:35 load avg: 10.05 [ 47/477] test.test_concurrent_futures.test_process_pool passed (42.7 sec) -- running (6): test.test_concurrent_futures.test_as_completed (1 min 6 sec), test.test_asyncio.test_tasks (1 min 16 sec), test.test_concurrent_futures.test_wait (33.4 sec), test.test_asyncio.test_events (1 min 35 sec), test.test_concurrent_futures.test_deadlock (1 min 4 sec), test.test_concurrent_futures.test_shutdown (42.1 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:01:55 load avg: 13.36 [ 48/477] test.test_asyncio.test_events passed (1 min 55 sec) -- running (6): test.test_multiprocessing_forkserver.test_manager (36.8 sec), test.test_concurrent_futures.test_as_completed (1 min 26 sec), test.test_asyncio.test_tasks (1 min 37 sec), test.test_concurrent_futures.test_wait (53.8 sec), test.test_concurrent_futures.test_deadlock (1 min 24 sec), test.test_concurrent_futures.test_shutdown (1 min 2 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. .1.
test.test_asyncio.test_events leaked [0, 1, 0] memory blocks, sum=1 (this is fine)
0:01:57 load avg: 13.36 [ 49/477] test.test_concurrent_futures.test_as_completed passed (1 min 28 sec) -- running (5): test.test_multiprocessing_forkserver.test_manager (38.8 sec), test.test_asyncio.test_tasks (1 min 39 sec), test.test_concurrent_futures.test_wait (55.8 sec), test.test_concurrent_futures.test_deadlock (1 min 26 sec), test.test_concurrent_futures.test_shutdown (1 min 4 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. .2.
test.test_concurrent_futures.test_as_completed leaked [-2, 2, 0] memory blocks, sum=0 (this is fine)
0:02:09 load avg: 13.75 [ 50/477] test.test_concurrent_futures.test_deadlock passed (1 min 39 sec) -- running (5): test.test_multiprocessing_forkserver.test_manager (51.1 sec), test.test_asyncio.test_tasks (1 min 51 sec), test.test_concurrent_futures.test_wait (1 min 8 sec), test.test_concurrent_futures.test_shutdown (1 min 16 sec), test.test_multiprocessing_forkserver.test_misc (34.7 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:02:36 load avg: 28.97 [ 51/477] test.test_concurrent_futures.test_shutdown passed (1 min 43 sec) -- running (6): test.test_multiprocessing_forkserver.test_manager (1 min 17 sec), test.test_multiprocessing_forkserver.test_threads (38.5 sec), test.test_asyncio.test_tasks (2 min 17 sec), test.test_concurrent_futures.test_wait (1 min 34 sec), test.test_multiprocessing_forkserver.test_processes (40.5 sec), test.test_multiprocessing_forkserver.test_misc (1 min)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:03:06 load avg: 27.55 running (8): test.test_multiprocessing_forkserver.test_manager (1 min 47 sec), test.test_multiprocessing_forkserver.test_threads (1 min 8 sec), test.test_asyncio.test_tasks (2 min 47 sec), test.test_concurrent_futures.test_wait (2 min 4 sec), test.test_multiprocessing_forkserver.test_processes (1 min 10 sec), test.test_multiprocessing_spawn.test_manager (56.2 sec), test.test_multiprocessing_spawn.test_misc (30.0 sec), test.test_multiprocessing_forkserver.test_misc (1 min 30 sec)
0:03:35 load avg: 25.36 [ 52/477] test.test_multiprocessing_forkserver.test_manager passed (2 min 16 sec) -- running (7): test.test_multiprocessing_forkserver.test_threads (1 min 37 sec), test.test_asyncio.test_tasks (3 min 16 sec), test.test_concurrent_futures.test_wait (2 min 33 sec), test.test_multiprocessing_forkserver.test_processes (1 min 39 sec), test.test_multiprocessing_spawn.test_manager (1 min 25 sec), test.test_multiprocessing_spawn.test_misc (59.3 sec), test.test_multiprocessing_forkserver.test_misc (2 min)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:03:53 load avg: 26.97 [ 53/477] test.test_multiprocessing_forkserver.test_threads passed (1 min 56 sec) -- running (6): test.test_asyncio.test_tasks (3 min 35 sec), test.test_concurrent_futures.test_wait (2 min 52 sec), test.test_multiprocessing_forkserver.test_processes (1 min 58 sec), test.test_multiprocessing_spawn.test_manager (1 min 44 sec), test.test_multiprocessing_spawn.test_misc (1 min 17 sec), test.test_multiprocessing_forkserver.test_misc (2 min 18 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:04:23 load avg: 27.22 running (8): test.test_multiprocessing_spawn.test_processes (48.7 sec), test.test_multiprocessing_spawn.test_threads (30.0 sec), test.test_asyncio.test_tasks (4 min 5 sec), test.test_concurrent_futures.test_wait (3 min 22 sec), test.test_multiprocessing_forkserver.test_processes (2 min 28 sec), test.test_multiprocessing_spawn.test_manager (2 min 14 sec), test.test_multiprocessing_spawn.test_misc (1 min 47 sec), test.test_multiprocessing_forkserver.test_misc (2 min 48 sec)
0:04:30 load avg: 25.56 [ 54/477] test.test_multiprocessing_forkserver.test_misc passed (2 min 55 sec) -- running (7): test.test_multiprocessing_spawn.test_processes (55.0 sec), test.test_multiprocessing_spawn.test_threads (36.4 sec), test.test_asyncio.test_tasks (4 min 11 sec), test.test_concurrent_futures.test_wait (3 min 28 sec), test.test_multiprocessing_forkserver.test_processes (2 min 34 sec), test.test_multiprocessing_spawn.test_manager (2 min 20 sec), test.test_multiprocessing_spawn.test_misc (1 min 54 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:00 load avg: 25.17 [ 55/477] test.test_pydoc.test_pydoc passed -- running (7): test.test_multiprocessing_spawn.test_processes (1 min 24 sec), test.test_multiprocessing_spawn.test_threads (1 min 6 sec), test.test_asyncio.test_tasks (4 min 41 sec), test.test_concurrent_futures.test_wait (3 min 58 sec), test.test_multiprocessing_forkserver.test_processes (3 min 4 sec), test.test_multiprocessing_spawn.test_manager (2 min 50 sec), test.test_multiprocessing_spawn.test_misc (2 min 24 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
X7. 1..
test.test_pydoc.test_pydoc leaked [1, 0, 0] memory blocks, sum=1 (this is fine)
0:05:07 load avg: 27.00 [ 56/477] test.test_concurrent_futures.test_wait passed (4 min 6 sec) -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 32 sec), test.test_multiprocessing_spawn.test_threads (1 min 13 sec), test.test_asyncio.test_tasks (4 min 49 sec), test.test_multiprocessing_forkserver.test_processes (3 min 12 sec), test.test_multiprocessing_spawn.test_manager (2 min 57 sec), test.test_multiprocessing_spawn.test_misc (2 min 31 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:08 load avg: 27.00 [ 57/477] test___all__ passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 32 sec), test.test_multiprocessing_spawn.test_threads (1 min 14 sec), test.test_asyncio.test_tasks (4 min 49 sec), test.test_multiprocessing_forkserver.test_processes (3 min 12 sec), test.test_multiprocessing_spawn.test_manager (2 min 58 sec), test.test_multiprocessing_spawn.test_misc (2 min 32 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:08 load avg: 27.00 [ 58/477] test__colorize passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 33 sec), test.test_multiprocessing_spawn.test_threads (1 min 14 sec), test.test_asyncio.test_tasks (4 min 50 sec), test.test_multiprocessing_forkserver.test_processes (3 min 13 sec), test.test_multiprocessing_spawn.test_manager (2 min 58 sec), test.test_multiprocessing_spawn.test_misc (2 min 32 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:18 load avg: 25.66 [ 59/477] test__interpchannels passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 43 sec), test.test_multiprocessing_spawn.test_threads (1 min 24 sec), test.test_asyncio.test_tasks (5 min), test.test_multiprocessing_forkserver.test_processes (3 min 23 sec), test.test_multiprocessing_spawn.test_manager (3 min 9 sec), test.test_multiprocessing_spawn.test_misc (2 min 42 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:20 load avg: 25.12 [ 60/477] test__locale passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 44 sec), test.test_multiprocessing_spawn.test_threads (1 min 26 sec), test.test_asyncio.test_tasks (5 min 1 sec), test.test_multiprocessing_forkserver.test_processes (3 min 24 sec), test.test_multiprocessing_spawn.test_manager (3 min 10 sec), test.test_multiprocessing_spawn.test_misc (2 min 44 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:20 load avg: 25.12 [ 61/477] test__opcode passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 45 sec), test.test_multiprocessing_spawn.test_threads (1 min 26 sec), test.test_asyncio.test_tasks (5 min 2 sec), test.test_multiprocessing_forkserver.test_processes (3 min 25 sec), test.test_multiprocessing_spawn.test_manager (3 min 10 sec), test.test_multiprocessing_spawn.test_misc (2 min 44 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:23 load avg: 25.12 [ 62/477] test__osx_support passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 48 sec), test.test_multiprocessing_spawn.test_threads (1 min 29 sec), test.test_asyncio.test_tasks (5 min 5 sec), test.test_multiprocessing_forkserver.test_processes (3 min 27 sec), test.test_multiprocessing_spawn.test_manager (3 min 13 sec), test.test_multiprocessing_spawn.test_misc (2 min 47 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:24 load avg: 25.12 [ 63/477] test_abc passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 48 sec), test.test_multiprocessing_spawn.test_threads (1 min 30 sec), test.test_asyncio.test_tasks (5 min 5 sec), test.test_multiprocessing_forkserver.test_processes (3 min 28 sec), test.test_multiprocessing_spawn.test_manager (3 min 14 sec), test.test_multiprocessing_spawn.test_misc (2 min 48 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:24 load avg: 24.31 [ 64/477] test_abstract_numbers passed -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 49 sec), test.test_multiprocessing_spawn.test_threads (1 min 30 sec), test.test_asyncio.test_tasks (5 min 6 sec), test.test_multiprocessing_forkserver.test_processes (3 min 28 sec), test.test_multiprocessing_spawn.test_manager (3 min 14 sec), test.test_multiprocessing_spawn.test_misc (2 min 48 sec)
beginning 6 repetitions. Showing number of leaks (. for 0 or less, X for 10 or more)
123:456
XX. ...
0:05:24 load avg: 24.31 [ 65/477] test_android skipped -- running (6): test.test_multiprocessing_spawn.test_processes (1 min 49 sec), test.test_multiprocessing_spawn.test_threads (1 min 30 sec), test.test_asyncio.test_tasks (5 min 6 sec), test.test_multiprocessing_forkserver.test_processes (3 min 29 sec), test.test_multiprocessing_spawn.test_manager (3 min 15 sec), test.test_multiprocessing_spawn.test_misc (2 min 48 sec)
test_android skipped -- Android-specific
['<testsuite start="2024-05-18 20:09:49.256742" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.118789" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.233059" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.022532" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.108044" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.019757" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.052147" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000011"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.071651" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.023423" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000077" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000073" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.024750" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.024761" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.039342" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.000709" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.057025" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.019557" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000112" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.032125" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000090" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.029055" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.017788" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000071" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000059" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.024635" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000046" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000008"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000162" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000205" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.046799" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.039628" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000044" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.025252" /><testcase name="36" status="run" result="completed" time="0.041265" /><testcase name="37" status="run" result="completed" time="0.086217" /><testcase name="38" status="run" result="completed" time="0.074877" /><testcase name="39" status="run" result="completed" time="0.058622" /><testcase name="40" status="run" result="completed" time="0.076665" /><testcase name="41" status="run" result="completed" time="0.044967" /><testcase name="42" status="run" result="completed" time="0.052334" /><testcase name="43" status="run" result="completed" time="0.030462" /><testcase name="44" status="run" result="completed" time="0.035534" /><testcase name="45" status="run" result="completed" time="0.028639" /><testcase name="46" status="run" result="completed" time="0.032708" /><testcase name="47" status="run" result="completed" time="0.027576"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="48" status="run" result="completed" time="0.029612" /><testcase name="49" status="run" result="completed" time="0.038496" /><testcase name="50" status="run" result="completed" time="0.025856" /><testcase name="51" status="run" result="completed" time="0.031141" /><testcase name="52" status="run" result="completed" time="0.026753" /><testcase name="53" status="run" result="completed" time="0.108883" /><testcase name="56" status="run" result="completed" time="0.061177" /><testcase name="58" status="run" result="completed" time="0.026622" /><testcase name="59" status="run" result="completed" time="0.019501" /><testcase name="60" status="run" result="completed" time="0.048249" /><testcase name="61" status="run" result="completed" time="0.028830" /><testcase name="62" status="run" result="completed" time="0.036559" /><testcase name="63" status="run" result="completed" time="0.060463" /><testcase name="64" status="run" result="completed" time="0.110073" /><testcase name="66" status="run" result="completed" time="0.075128" /><testcase name="68" status="run" result="completed" time="0.107278" /><testcase name="69" status="run" result="completed" time="0.106143" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000010"><skipped>blocking forever</skipped></testcase><testcase name="70" status="run" result="completed" time="0.050872" /><testcase name="71" status="run" result="completed" time="0.071942" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000093" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.003459" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000091" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.003976" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000106" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000036" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000068" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000132" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000124" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000049" /></testsuite>', '<testsuite start="2024-05-18 20:09:51.994596" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.165925" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.213673" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.050671" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.079336" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.019969" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.052856" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000008"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.056522" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.020771" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000035" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000028" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.016890" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.019119" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.031638" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.000353" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.058885" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.015065" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000049" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.021851" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000056" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.029310" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.021289" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000037" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000030" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.029102" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000041" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000006"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000157" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000214" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.031253" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.032172" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000042" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.022269" /><testcase name="107" status="run" result="completed" time="0.046010" /><testcase name="108" status="run" result="completed" time="0.051487" /><testcase name="109" status="run" result="completed" time="0.036568" /><testcase name="110" status="run" result="completed" time="0.039363" /><testcase name="111" status="run" result="completed" time="0.049805" /><testcase name="112" status="run" result="completed" time="0.042216" /><testcase name="113" status="run" result="completed" time="0.039694" /><testcase name="114" status="run" result="completed" time="0.023917" /><testcase name="115" status="run" result="completed" time="0.017156" /><testcase name="116" status="run" result="completed" time="0.021574" /><testcase name="117" status="run" result="completed" time="0.026406" /><testcase name="118" status="run" result="completed" time="0.016010"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="119" status="run" result="completed" time="0.026154" /><testcase name="120" status="run" result="completed" time="0.017651" /><testcase name="121" status="run" result="completed" time="0.017134" /><testcase name="122" status="run" result="completed" time="0.016414" /><testcase name="123" status="run" result="completed" time="0.019697" /><testcase name="124" status="run" result="completed" time="0.107270" /><testcase name="127" status="run" result="completed" time="0.073294" /><testcase name="129" status="run" result="completed" time="0.021998" /><testcase name="130" status="run" result="completed" time="0.021426" /><testcase name="131" status="run" result="completed" time="0.065213" /><testcase name="132" status="run" result="completed" time="0.023274" /><testcase name="133" status="run" result="completed" time="0.056633" /><testcase name="134" status="run" result="completed" time="0.062693" /><testcase name="135" status="run" result="completed" time="0.088620" /><testcase name="137" status="run" result="completed" time="0.075342" /><testcase name="139" status="run" result="completed" time="0.064948" /><testcase name="140" status="run" result="completed" time="0.056591" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000009"><skipped>blocking forever</skipped></testcase><testcase name="141" status="run" result="completed" time="0.030242" /><testcase name="142" status="run" result="completed" time="0.034018" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000083" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.003222" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000092" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.003045" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000117" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000036" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000067" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000127" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000124" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000046" /></testsuite>', '<testsuite start="2024-05-18 20:09:54.312354" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.075031" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.083842" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.021990" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.047942" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.027276" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.063928" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000008"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.063820" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.027534" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000081" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000060" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.031410" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.037032" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.053633" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.000314" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.074469" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.048882" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000041" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.027510" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000052" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.051418" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.026539" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000039" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000030" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.035757" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000077" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000013"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000326" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000201" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.051264" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.154847" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000082" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.031230" /><testcase name="178" status="run" result="completed" time="0.200552" /><testcase name="179" status="run" result="completed" time="0.119034" /><testcase name="180" status="run" result="completed" time="0.185662" /><testcase name="181" status="run" result="completed" time="0.225770" /><testcase name="182" status="run" result="completed" time="0.147700" /><testcase name="183" status="run" result="completed" time="0.102475" /><testcase name="184" status="run" result="completed" time="0.092813" /><testcase name="185" status="run" result="completed" time="0.028343" /><testcase name="186" status="run" result="completed" time="0.037656" /><testcase name="187" status="run" result="completed" time="0.064272" /><testcase name="188" status="run" result="completed" time="0.044179" /><testcase name="189" status="run" result="completed" time="0.034228"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="190" status="run" result="completed" time="0.039032" /><testcase name="191" status="run" result="completed" time="0.120111" /><testcase name="192" status="run" result="completed" time="0.074194" /><testcase name="193" status="run" result="completed" time="0.096174" /><testcase name="194" status="run" result="completed" time="0.059671" /><testcase name="195" status="run" result="completed" time="0.220593" /><testcase name="198" status="run" result="completed" time="0.134348" /><testcase name="200" status="run" result="completed" time="0.023482" /><testcase name="201" status="run" result="completed" time="0.054511" /><testcase name="202" status="run" result="completed" time="0.097542" /><testcase name="203" status="run" result="completed" time="0.054988" /><testcase name="204" status="run" result="completed" time="0.048809" /><testcase name="205" status="run" result="completed" time="0.043305" /><testcase name="206" status="run" result="completed" time="0.076466" /><testcase name="208" status="run" result="completed" time="0.116169" /><testcase name="210" status="run" result="completed" time="0.039526" /><testcase name="211" status="run" result="completed" time="0.038671" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000008"><skipped>blocking forever</skipped></testcase><testcase name="212" status="run" result="completed" time="0.033025" /><testcase name="213" status="run" result="completed" time="0.036963" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000766" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.007518" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000100" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.003369" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000199" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000070" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000114" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000123" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000126" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000046" /></testsuite>', '<testsuite start="2024-05-18 20:09:58.108285" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.164019" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.190837" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.039865" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.095141" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.024889" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.044804" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000011"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.049512" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.017110" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000041" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000039" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.015966" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.015040" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.035867" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.000223" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.051598" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.021571" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000045" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.025448" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000048" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.023968" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.021474" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000073" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000068" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.028020" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000042" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000007"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000147" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000201" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.036359" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.034967" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000044" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.023237" /><testcase name="249" status="run" result="completed" time="0.034558" /><testcase name="250" status="run" result="completed" time="0.038525" /><testcase name="251" status="run" result="completed" time="0.047931" /><testcase name="252" status="run" result="completed" time="0.056895" /><testcase name="253" status="run" result="completed" time="0.070554" /><testcase name="254" status="run" result="completed" time="0.047777" /><testcase name="255" status="run" result="completed" time="0.072239" /><testcase name="256" status="run" result="completed" time="0.037395" /><testcase name="257" status="run" result="completed" time="0.088366" /><testcase name="258" status="run" result="completed" time="0.052248" /><testcase name="259" status="run" result="completed" time="0.072401" /><testcase name="260" status="run" result="completed" time="0.037188"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="261" status="run" result="completed" time="0.059009" /><testcase name="262" status="run" result="completed" time="0.026088" /><testcase name="263" status="run" result="completed" time="0.024894" /><testcase name="264" status="run" result="completed" time="0.074289" /><testcase name="265" status="run" result="completed" time="0.070639" /><testcase name="266" status="run" result="completed" time="0.176288" /><testcase name="269" status="run" result="completed" time="0.123971" /><testcase name="271" status="run" result="completed" time="0.052711" /><testcase name="272" status="run" result="completed" time="0.024884" /><testcase name="273" status="run" result="completed" time="0.035654" /><testcase name="274" status="run" result="completed" time="0.020323" /><testcase name="275" status="run" result="completed" time="0.098269" /><testcase name="276" status="run" result="completed" time="0.176192" /><testcase name="277" status="run" result="completed" time="0.078816" /><testcase name="279" status="run" result="completed" time="0.106006" /><testcase name="281" status="run" result="completed" time="0.084233" /><testcase name="282" status="run" result="completed" time="0.058293" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000019"><skipped>blocking forever</skipped></testcase><testcase name="283" status="run" result="completed" time="0.112492" /><testcase name="284" status="run" result="completed" time="0.084162" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000175" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.008387" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000094" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.003807" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000097" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000032" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000063" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000131" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000116" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000044" /></testsuite>', '<testsuite start="2024-05-18 20:10:01.260716" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.084929" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.095149" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.023965" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.059573" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.025976" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.066842" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000009"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.059955" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.019085" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000036" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000028" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.021316" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.019700" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.052989" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.001255" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.103670" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.035278" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000151" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.044458" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000044" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.034581" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.021530" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000038" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000030" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.030685" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000043" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000007"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000148" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000201" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.063083" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.040496" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000051" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.044848" /><testcase name="320" status="run" result="completed" time="0.045601" /><testcase name="321" status="run" result="completed" time="0.046830" /><testcase name="322" status="run" result="completed" time="0.138190" /><testcase name="323" status="run" result="completed" time="0.049137" /><testcase name="324" status="run" result="completed" time="0.082212" /><testcase name="325" status="run" result="completed" time="0.080439" /><testcase name="326" status="run" result="completed" time="0.102638" /><testcase name="327" status="run" result="completed" time="0.025606" /><testcase name="328" status="run" result="completed" time="0.019735" /><testcase name="329" status="run" result="completed" time="0.028503" /><testcase name="330" status="run" result="completed" time="0.033393" /><testcase name="331" status="run" result="completed" time="0.019534"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="332" status="run" result="completed" time="0.028807" /><testcase name="333" status="run" result="completed" time="0.025454" /><testcase name="334" status="run" result="completed" time="0.022579" /><testcase name="335" status="run" result="completed" time="0.066905" /><testcase name="336" status="run" result="completed" time="0.027478" /><testcase name="337" status="run" result="completed" time="0.110836" /><testcase name="340" status="run" result="completed" time="0.101386" /><testcase name="342" status="run" result="completed" time="0.049150" /><testcase name="343" status="run" result="completed" time="0.019634" /><testcase name="344" status="run" result="completed" time="0.035177" /><testcase name="345" status="run" result="completed" time="0.021201" /><testcase name="346" status="run" result="completed" time="0.034741" /><testcase name="347" status="run" result="completed" time="0.034485" /><testcase name="348" status="run" result="completed" time="0.054554" /><testcase name="350" status="run" result="completed" time="0.050132" /><testcase name="352" status="run" result="completed" time="0.042257" /><testcase name="353" status="run" result="completed" time="0.045123" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000016"><skipped>blocking forever</skipped></testcase><testcase name="354" status="run" result="completed" time="0.041425" /><testcase name="355" status="run" result="completed" time="0.043452" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000156" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.005094" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000091" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.002971" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000086" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000032" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000061" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000118" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000111" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000044" /></testsuite>', '<testsuite start="2024-05-18 20:10:03.788573" tests="75" errors="0" failures="0"><testcase name="test.test__interpreters.CreateTests.test_after_destroy_all" status="run" result="completed" time="0.093388" /><testcase name="test.test__interpreters.CreateTests.test_after_destroy_some" status="run" result="completed" time="0.088146" /><testcase name="test.test__interpreters.CreateTests.test_in_main" status="run" result="completed" time="0.030142" /><testcase name="test.test__interpreters.CreateTests.test_in_subinterpreter" status="run" result="completed" time="0.051230" /><testcase name="test.test__interpreters.CreateTests.test_in_thread" status="run" result="completed" time="0.022905" /><testcase name="test.test__interpreters.CreateTests.test_in_threaded_subinterpreter" status="run" result="completed" time="0.051377" /><testcase name="test.test__interpreters.CreateTests.test_unique_id" status="run" result="completed" time="0.000008"><skipped>enable this test when working on pystate.c</skipped></testcase><testcase name="test.test__interpreters.DestroyTests.test_all" status="run" result="completed" time="0.075475" /><testcase name="test.test__interpreters.DestroyTests.test_already_destroyed" status="run" result="completed" time="0.025701" /><testcase name="test.test__interpreters.DestroyTests.test_bad_id" status="run" result="completed" time="0.000043" /><testcase name="test.test__interpreters.DestroyTests.test_does_not_exist" status="run" result="completed" time="0.000030" /><testcase name="test.test__interpreters.DestroyTests.test_from_current" status="run" result="completed" time="0.021923" /><testcase name="test.test__interpreters.DestroyTests.test_from_other_thread" status="run" result="completed" time="0.020078" /><testcase name="test.test__interpreters.DestroyTests.test_from_sibling" status="run" result="completed" time="0.042207" /><testcase name="test.test__interpreters.DestroyTests.test_main" status="run" result="completed" time="0.000547" /><testcase name="test.test__interpreters.DestroyTests.test_one" status="run" result="completed" time="0.064985" /><testcase name="test.test__interpreters.DestroyTests.test_still_running" status="run" result="completed" time="0.035713" /><testcase name="test.test__interpreters.GetCurrentTests.test_main" status="run" result="completed" time="0.000046" /><testcase name="test.test__interpreters.GetCurrentTests.test_subinterpreter" status="run" result="completed" time="0.042408" /><testcase name="test.test__interpreters.GetMainTests.test_from_main" status="run" result="completed" time="0.000045" /><testcase name="test.test__interpreters.GetMainTests.test_from_subinterpreter" status="run" result="completed" time="0.032290" /><testcase name="test.test__interpreters.IsRunningTests.test_already_destroyed" status="run" result="completed" time="0.021381" /><testcase name="test.test__interpreters.IsRunningTests.test_bad_id" status="run" result="completed" time="0.000038" /><testcase name="test.test__interpreters.IsRunningTests.test_does_not_exist" status="run" result="completed" time="0.000147" /><testcase name="test.test__interpreters.IsRunningTests.test_from_subinterpreter" status="run" result="completed" time="0.034041" /><testcase name="test.test__interpreters.IsRunningTests.test_main" status="run" result="completed" time="0.000079" /><testcase name="test.test__interpreters.IsRunningTests.test_subinterpreter" status="run" result="completed" time="0.000013"><skipped>Fails on FreeBSD</skipped></testcase><testcase name="test.test__interpreters.IsShareableTests.test_default_shareables" status="run" result="completed" time="0.000292" /><testcase name="test.test__interpreters.IsShareableTests.test_not_shareable" status="run" result="completed" time="0.000388" /><testcase name="test.test__interpreters.ListAllTests.test_after_creating" status="run" result="completed" time="0.039997" /><testcase name="test.test__interpreters.ListAllTests.test_after_destroying" status="run" result="completed" time="0.034474" /><testcase name="test.test__interpreters.ListAllTests.test_initial" status="run" result="completed" time="0.000044" /><testcase name="test.test__interpreters.ModuleTests.test_import_in_interpreter" status="run" result="completed" time="0.029115" /><testcase name="391" status="run" result="completed" time="0.045306" /><testcase name="392" status="run" result="completed" time="0.049445" /><testcase name="393" status="run" result="completed" time="0.052131" /><testcase name="394" status="run" result="completed" time="0.047487" /><testcase name="395" status="run" result="completed" time="0.050661" /><testcase name="396" status="run" result="completed" time="0.081010" /><testcase name="397" status="run" result="completed" time="0.105005" /><testcase name="398" status="run" result="completed" time="0.043999" /><testcase name="399" status="run" result="completed" time="0.075979" /><testcase name="400" status="run" result="completed" time="0.040846" /><testcase name="401" status="run" result="completed" time="0.051325" /><testcase name="402" status="run" result="completed" time="0.045339"><system-out /><system-err /><output type="AssertionError" message="AssertionError: ValueError not raised&#10;">Traceback (most recent call last):', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 58, in testPartExecutor', '    yield', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 651, in run', '    self._callTestMethod(testMethod)', '    ~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 606, in _callTestMethod', '    if method() is not None:', '       ~~~~~~^^', '  File "/Users/admin/Projects/cpython/Lib/test/test__interpreters.py", line 1115, in test_return_value', '    with self.assertRaises(ValueError):', '        _interpreters.run_func(self.id, script)', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 263, in __exit__', '    self._raiseFailure("{} not raised".format(exc_name))', '    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^', '  File "/Users/admin/Projects/cpython/Lib/unittest/case.py", line 200, in _raiseFailure', '    raise self.test_case.failureException(msg)', 'AssertionError: ValueError not raised', '</output></testcase><testcase name="403" status="run" result="completed" time="0.085147" /><testcase name="404" status="run" result="completed" time="0.039693" /><testcase name="405" status="run" result="completed" time="0.034673" /><testcase name="406" status="run" result="completed" time="0.056609" /><testcase name="407" status="run" result="completed" time="0.029473" /><testcase name="408" status="run" result="completed" time="0.109135" /><testcase name="411" status="run" result="completed" time="0.056012" /><testcase name="413" status="run" result="completed" time="0.019725" /><testcase name="414" status="run" result="completed" time="0.020820" /><testcase name="415" status="run" result="completed" time="0.035424" /><testcase name="416" status="run" result="completed" time="0.016643" /><testcase name="417" status="run" result="completed" time="0.028605" /><testcase name="418" status="run" result="completed" time="0.029691" /><testcase name="419" status="run" result="completed" time="0.042919" /><testcase name="421" status="run" result="completed" time="0.031898" /><testcase name="423" status="run" result="completed" time="0.036822" /><testcase name="424" status="run" result="completed" time="0.032704" /><testcase name="test.test__interpreters.RunStringTests.test_still_running_at_exit" status="run" result="completed" time="0.000007"><skipped>blocking forever</skipped></testcase><testcase name="425" status="run" result="completed" time="0.032048" /><testcase name="426" status="run" result="completed" time="0.086898" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bool" status="run" result="completed" time="0.000291" /><testcase name="test.test__interpreters.ShareableTypeTests.test_bytes" status="run" result="completed" time="0.003550" /><testcase name="test.test__interpreters.ShareableTypeTests.test_float" status="run" result="completed" time="0.000091" /><testcase name="test.test__interpreters.ShareableTypeTests.test_int" status="run" result="completed" time="0.007306" /><testcase name="test.test__interpreters.ShareableTypeTests.test_non_shareable_int" status="run" result="completed" time="0.000196" /><testcase name="test.test__interpreters.ShareableTypeTests.test_singletons" status="run" result="completed" time="0.000168" /><testcase name="test.test__interpreters.ShareableTypeTests.test_strs" status="run" result="completed" time="0.000135" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuple" status="run" result="completed" time="0.000255" /><testcase name="test.test__interpreters.ShareableTypeTests.test_tuples_containing_non_shareable_types" status="run" result="completed" time="0.000324" /><testcase name="test.test__interpreters.ShareableTypeTests.test_types" status="run" result="completed" time="0.000214" /></testsuite>']
Kill <WorkerThread #1 running test=test.test_multiprocessing_spawn.test_processes pid=28887 time=1 min 50 sec> process group
Kill <WorkerThread #2 running test=test.test_multiprocessing_spawn.test_threads pid=29390 time=1 min 32 sec> process group
Kill <WorkerThread #3 running test=test.test_asyncio.test_tasks pid=21784 time=5 min 7 sec> process group
Kill <WorkerThread #4 running test=test_array pid=31666 time=22 ms> process group
Kill <WorkerThread #5 running test=test.test_multiprocessing_forkserver.test_processes pid=25793 time=3 min 30 sec> process group
Kill <WorkerThread #6 running test=test.test_multiprocessing_spawn.test_manager pid=26431 time=3 min 16 sec> process group
Kill <WorkerThread #7 running test=test.test_multiprocessing_spawn.test_misc pid=27170 time=2 min 49 sec> process group
Kill <WorkerThread #8 running test=test_argparse pid=31649 time=1.0 sec> process group
Traceback (most recent call last):
  File "/Users/admin/Projects/cpython/Lib/runpy.py", line 198, in _run_module_as_main
    return _run_code(code, main_globals, None,
                     "__main__", mod_spec)
  File "/Users/admin/Projects/cpython/Lib/runpy.py", line 88, in _run_code
    exec(code, run_globals)
    ~~~~^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/__main__.py", line 2, in <module>
    main(_add_python_opts=True)
    ~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 739, in main
    Regrtest(ns, _add_python_opts=_add_python_opts).main(tests=tests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 731, in main
    exitcode = self.run_tests(selected, tests)
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 568, in run_tests
    return self._run_tests(selected, tests)
           ~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 528, in _run_tests
    self._run_tests_mp(runtests, self.num_workers)
    ~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/main.py", line 426, in _run_tests_mp
    RunWorkers(num_workers, runtests, self.logger, self.results).run()
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/run_workers.py", line 600, in run
    result = self._process_result(item)
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/run_workers.py", line 571, in _process_result
    self.results.accumulate_result(result, self.runtests)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/results.py", line 132, in accumulate_result
    self.add_junit(xml_data)
    ~~~~~~~~~~~~~~^^^^^^^^^^
  File "/Users/admin/Projects/cpython/Lib/test/libregrtest/results.py", line 165, in add_junit
    self.testsuite_xml.append(ET.fromstring(e))
                              ~~~~~~~~~~~~~^^^
  File "/Users/admin/Projects/cpython/Lib/xml/etree/ElementTree.py", line 1343, in XML
    return parser.close()
           ~~~~~~~~~~~~^^
xml.etree.ElementTree.ParseError: no element found: line 1, column 5239

@vstinner
Copy link
Member Author

I've tested it locally and it seems there's something wrong

Fixed by using pickle for serialization.

My simple serialization using one XML item as text per line doesn't work since it can contain newline.

Copy link
Member

@Eclips4 Eclips4 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM!

@vstinner vstinner merged commit 9257731 into python:main May 20, 2024
41 checks passed
@vstinner vstinner deleted the regrtest_xml branch May 20, 2024 21:05
@vstinner vstinner added the needs backport to 3.13 bugs and security fixes label May 20, 2024
@miss-islington-app
Copy link

Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.13.
🐍🍒⛏🤖

miss-islington pushed a commit to miss-islington/cpython that referenced this pull request May 20, 2024
…onGH-119148)

regrtest test runner: Add XML support to the refleak checker
(-R option).

* run_unittest() now stores XML elements as string, rather than
  objects, in support.junit_xml_list.
* runtest_refleak() now saves/restores XML strings before/after
  checking for reference leaks. Save XML into a temporary file.
(cherry picked from commit 9257731)

Co-authored-by: Victor Stinner <vstinner@python.org>
@bedevere-app
Copy link

bedevere-app bot commented May 20, 2024

GH-119270 is a backport of this pull request to the 3.13 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.13 bugs and security fixes label May 20, 2024
@vstinner vstinner added the needs backport to 3.12 bug and security fixes label May 20, 2024
@miss-islington-app
Copy link

Thanks @vstinner for the PR 🌮🎉.. I'm working now to backport this PR to: 3.12.
🐍🍒⛏🤖

@miss-islington-app
Copy link

Sorry, @vstinner, I could not cleanly backport this to 3.12 due to a conflict.
Please backport using cherry_picker on command line.

cherry_picker 9257731f5d3e9d4f99e314b23a14506563e167d7 3.12

@bedevere-app
Copy link

bedevere-app bot commented May 20, 2024

GH-119272 is a backport of this pull request to the 3.12 branch.

@bedevere-app bedevere-app bot removed the needs backport to 3.12 bug and security fixes label May 20, 2024
@vstinner
Copy link
Member Author

Merged, thanks for your review @Eclips4.

vstinner added a commit to vstinner/cpython that referenced this pull request May 20, 2024
…on#119148)

regrtest test runner: Add XML support to the refleak checker
(-R option).

* run_unittest() now stores XML elements as string, rather than
  objects, in support.junit_xml_list.
* runtest_refleak() now saves/restores XML strings before/after
  checking for reference leaks. Save XML into a temporary file.

(cherry picked from commit 9257731)
vstinner added a commit that referenced this pull request May 20, 2024
…119148) (#119270)

gh-119050: Add XML support to libregrtest refleak checker (GH-119148)

regrtest test runner: Add XML support to the refleak checker
(-R option).

* run_unittest() now stores XML elements as string, rather than
  objects, in support.junit_xml_list.
* runtest_refleak() now saves/restores XML strings before/after
  checking for reference leaks. Save XML into a temporary file.
(cherry picked from commit 9257731)

Co-authored-by: Victor Stinner <vstinner@python.org>
vstinner added a commit that referenced this pull request May 20, 2024
…9148) (#119272)

gh-119050: Add XML support to libregrtest refleak checker (#119148)

regrtest test runner: Add XML support to the refleak checker
(-R option).

* run_unittest() now stores XML elements as string, rather than
  objects, in support.junit_xml_list.
* runtest_refleak() now saves/restores XML strings before/after
  checking for reference leaks. Save XML into a temporary file.

(cherry picked from commit 9257731)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants