#4 Add testing of the python interpreter for the ssl related tests
Merged 3 years ago by tmraz. Opened 3 years ago by cstratak.
Unknown source python_tests  into  master

@@ -0,0 +1,17 @@

+ ---

+ - hosts: localhost

+   roles:

+   - role: standard-test-basic

+     tags:

+     - classic

+     repositories:

+     - repo: "https://src.fedoraproject.org/tests/python.git"

+       dest: "python"

+     tests:

+     - python_selftest:

+         dir: python/selftest

+         run: VERSION=3.7 X="test_ssl test_hashlib test_ftplib test_httplib test_imaplib test_logging test_nntplib test_poplib test_urllib2_localnet test_urllib test_xmlrpc" ./parallel.sh

+     required_packages:

+     - gcc  # for extension building in venv and selftest

+     - python3-tkinter  # for selftest

+     - python3-test  # for selftest 

\ No newline at end of file

rebased onto 83d9c925a86d04df1423dd3318d0a84f2ef7b9ed

3 years ago

rebased onto 160913a5291f6a9e91c73684e49184a866ea238a

3 years ago

It seems the tests do not run. @psss any pointers?

Try renaming to tests/tests_python.yml.

1 new commit added

  • Rename file to tests_python
3 years ago

1 new commit added

  • Add tkinter back
3 years ago

It seems all the tests passed, including asyncio which actually failed initially here:

ERROR: test_start_tls_server_1 (test.test_asyncio.test_sslproto.SelectorStartTLSTests)
Traceback (most recent call last):
File "/usr/lib64/python3.7/test/test_asyncio/test_sslproto.py", line 507, in test_start_tls_server_1
self.loop.run_until_complete(run_main())
File "/usr/lib64/python3.7/asyncio/base_events.py", line 584, in run_until_complete
return future.result()
File "/usr/lib64/python3.7/test/test_asyncio/test_sslproto.py", line 502, in run_main
loop=self.loop, timeout=self.TIMEOUT)
File "/usr/lib64/python3.7/asyncio/tasks.py", line 423, in wait_for
raise futures.TimeoutError()
concurrent.futures._base.TimeoutError

But then on the verbose mode rerun it passed.

Note to self: remove gcc and see if things work.

1 new commit added

  • Removal of gcc from the test environment
3 years ago

1 new commit added

  • Add gcc back and remove python3-devel
3 years ago

This seems good to go for now (will squash the commits later on), but test_asyncio fails due to https://bugs.python.org/issue35998

call it differently? e.g. python_selftest or python. So in the artifacts section on the CI etc. people know what selftest it is?

1 new commit added

  • Changing the tests naming scheme
3 years ago
+ python3.7 -m test -wW -j0 test_ssl test_hashlib test_asyncio test_ftplib test_httplib test_imaplib test_logging test_nntplib test_poplib test_urllib2_localnet test_urllib test_xmlrpc
Run tests in parallel using 23 child processes
0:00:04 load avg: 0.93 [ 1/12] test_nntplib passed
0:00:05 load avg: 0.93 [ 2/12] test_urllib passed
0:00:05 load avg: 0.93 [ 3/12] test_httplib passed
0:00:06 load avg: 0.93 [ 4/12] test_urllib2_localnet passed
0:00:10 load avg: 0.85 [ 5/12] test_hashlib passed
0:00:11 load avg: 0.85 [ 6/12] test_poplib passed
0:00:12 load avg: 0.85 [ 7/12] test_imaplib passed
0:00:13 load avg: 0.85 [ 8/12] test_xmlrpc passed
0:00:14 load avg: 0.94 [ 9/12] test_ftplib passed
0:00:15 load avg: 0.94 [10/12] test_ssl passed
0:00:31 load avg: 0.81 [11/12] test_logging passed -- running: test_asyncio (31 sec 35 ms)
0:00:50 load avg: 0.58 [12/12] test_asyncio passed (48 sec 464 ms)

== Tests result: SUCCESS ==

All 12 tests OK.

Total duration: 50 sec 726 ms
Tests result: SUCCESS

rebased onto dd3eed79ecd3add308f1d0e31e59327670b4e297

3 years ago

squashed and ready for review.

rebased onto 50f0410c53ca0f5a881f8169da116d0408c79772

3 years ago

is tkinter needed for ssl tests?

Is gcc needed for the tests listed?

In theory, if you use VERSION=3 instead of 3.7, this should work with the "normal" python3 package and when we update it to 3.8, we don't need to go back here and change it. Untested.

They are indeed needed due to running pythoninfo

Alright. Will try it out after that CI run finishes.

oh damn broken pipeline again

pipeline's broken very much on rawhide. it seems it relied on yum.

======================================================================
ERROR: test_start_tls_server_1 (test.test_asyncio.test_sslproto.SelectorStartTLSTests)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/usr/lib64/python3.7/test/test_asyncio/test_sslproto.py", line 507, in test_start_tls_server_1
    self.loop.run_until_complete(run_main())
  File "/usr/lib64/python3.7/asyncio/base_events.py", line 584, in run_until_complete
    return future.result()
  File "/usr/lib64/python3.7/test/test_asyncio/test_sslproto.py", line 502, in run_main
    loop=self.loop, timeout=self.TIMEOUT)
  File "/usr/lib64/python3.7/asyncio/tasks.py", line 423, in wait_for
    raise futures.TimeoutError()
concurrent.futures._base.TimeoutError

----------------------------------------------------------------------

That test is flaky for the time being and upstream is aware of that.

https://bugs.python.org/issue35998

What would you think, better to skip test_asyncio for now or just merge as is? IMHO let's not skip it, upstream is aware of it and when it's fixed, we'll not need to adjust the tests in this repo.

If we merge when flaky, the test results are useless. I'd skip for now and remember to reenable later.

rebased onto 591d70e7d94cb072b03a4473dbc5f67914cdd05d

3 years ago

rebased onto 648a3cb

3 years ago

Pull-Request has been merged by tmraz

3 years ago