Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 619764 - dev-python/pytest-xdist-1.15.0 fails tests under python3.6
Summary: dev-python/pytest-xdist-1.15.0 fails tests under python3.6
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: Python Gentoo Team
URL:
Whiteboard:
Keywords: TESTFAILURE
Depends on:
Blocks:
 
Reported: 2017-05-26 16:33 UTC by Mart Raudsepp
Modified: 2019-06-02 12:54 UTC (History)
0 users

See Also:
Package list:
Runtime testing required: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Mart Raudsepp gentoo-dev 2017-05-26 16:33:15 UTC
Test suite is expecting ImportError, but it's ModuleNotFoundError since python3.6

==================================================================================================== FAILURES =====================================================================================================
______________________________________________________________________________________ TestDistribution.test_n1_import_error ______________________________________________________________________________________

self = <acceptance_test.TestDistribution object at 0x76312b70>, testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_n1_import_error0')>

    def test_n1_import_error(self, testdir):
        p1 = testdir.makepyfile("""
                import __import_of_missing_module
                def test_import():
                    pass
            """)
        result = testdir.runpytest(p1, "-n1")
        assert result.ret == 1
        result.stdout.fnmatch_lines([
>           "E   ImportError: *__import_of_missing_module*",
        ])
E       Failed: nomatch: 'E   ImportError: *__import_of_missing_module*'
E           and: '=============================================================================================== test session starts ==============================================================================================='
E           and: 'platform linux -- Python 3.6.1, pytest-3.0.7, py-1.4.32, pluggy-0.4.0'
E           and: 'rootdir: /var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_n1_import_error0, inifile:'
E           and: 'plugins: xdist-1.15.0, hypothesis-3.6.1'
E           and: 'gw0 I'
E           and: 'gw0 [0]'
E           and: ''
E           and: 'scheduling tests via LoadScheduling'
E           and: ''
E           and: '===================================================================================================== ERRORS ======================================================================================================'
E           and: '____________________________________________________________________________________ ERROR collecting test_n1_import_error.py _____________________________________________________________________________________'
E           and: "ImportError while importing test module '/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_n1_import_error0/test_n1_import_error.py'."
E           and: 'Hint: make sure your test modules/packages have valid Python names.'
E           and: 'Traceback:'
E           and: 'test_n1_import_error.py:1: in <module>'
E           and: '    import __import_of_missing_module'
E           and: "E   ModuleNotFoundError: No module named '__import_of_missing_module'"
E           and: '============================================================================================= 1 error in 8.95 seconds ============================================================================================='
E           and: ''
E       remains unmatched: 'E   ImportError: *__import_of_missing_module*'

../../../../../work/pytest-xdist-1.15.0/testing/acceptance_test.py:33: Failed
---------------------------------------------------------------------------------------------- Captured stdout call -----------------------------------------------------------------------------------------------
=============================================================================================== test session starts ===============================================================================================
platform linux -- Python 3.6.1, pytest-3.0.7, py-1.4.32, pluggy-0.4.0
rootdir: /var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_n1_import_error0, inifile:
plugins: xdist-1.15.0, hypothesis-3.6.1
gw0 I
gw0 [0]

scheduling tests via LoadScheduling

===================================================================================================== ERRORS ======================================================================================================
____________________________________________________________________________________ ERROR collecting test_n1_import_error.py _____________________________________________________________________________________
ImportError while importing test module '/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_n1_import_error0/test_n1_import_error.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test_n1_import_error.py:1: in <module>
    import __import_of_missing_module
E   ModuleNotFoundError: No module named '__import_of_missing_module'
============================================================================================= 1 error in 8.95 seconds =============================================================================================
_______________________________________________________________________________ TestDistribution.test_manytests_to_one_import_error _______________________________________________________________________________

self = <acceptance_test.TestDistribution object at 0x7620b910>
testdir = <Testdir local('/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_manytests_to_one_import_error0')>

    def test_manytests_to_one_import_error(self, testdir):
        p1 = testdir.makepyfile("""
                import __import_of_missing_module
                def test_import():
                    pass
            """)
        result = testdir.runpytest(p1, '--tx=popen', '--tx=popen')
        assert result.ret in (1, 2)
        result.stdout.fnmatch_lines([
>           "E   ImportError: *__import_of_missing_module*",
        ])
E       Failed: nomatch: 'E   ImportError: *__import_of_missing_module*'
E           and: '=============================================================================================== test session starts ==============================================================================================='
E           and: 'platform linux -- Python 3.6.1, pytest-3.0.7, py-1.4.32, pluggy-0.4.0'
E           and: 'rootdir: /var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_manytests_to_one_import_error0, inifile:'
E           and: 'plugins: xdist-1.15.0, hypothesis-3.6.1'
E           and: 'collected 0 items / 1 errors'
E           and: ''
E           and: '===================================================================================================== ERRORS ======================================================================================================'
E           and: '_____________________________________________________________________________ ERROR collecting test_manytests_to_one_import_error.py ______________________________________________________________________________'
E           and: "ImportError while importing test module '/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_manytests_to_one_import_error0/test_manytests_to_one_import_error.py'."
E           and: 'Hint: make sure your test modules/packages have valid Python names.'
E           and: 'Traceback:'
E           and: 'test_manytests_to_one_import_error.py:1: in <module>'
E           and: '    import __import_of_missing_module'
E           and: "E   ModuleNotFoundError: No module named '__import_of_missing_module'"
E           and: '!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!'
E           and: '============================================================================================= 1 error in 3.11 seconds ============================================================================================='
E           and: ''
E       remains unmatched: 'E   ImportError: *__import_of_missing_module*'

../../../../../work/pytest-xdist-1.15.0/testing/acceptance_test.py:67: Failed
---------------------------------------------------------------------------------------------- Captured stdout call -----------------------------------------------------------------------------------------------
=============================================================================================== test session starts ===============================================================================================
platform linux -- Python 3.6.1, pytest-3.0.7, py-1.4.32, pluggy-0.4.0
rootdir: /var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_manytests_to_one_import_error0, inifile:
plugins: xdist-1.15.0, hypothesis-3.6.1
collected 0 items / 1 errors

===================================================================================================== ERRORS ======================================================================================================
_____________________________________________________________________________ ERROR collecting test_manytests_to_one_import_error.py ______________________________________________________________________________
ImportError while importing test module '/var/tmp/portage/dev-python/pytest-xdist-1.15.0/temp/pytest-of-portage/pytest-6/testdir/test_manytests_to_one_import_error0/test_manytests_to_one_import_error.py'.
Hint: make sure your test modules/packages have valid Python names.
Traceback:
test_manytests_to_one_import_error.py:1: in <module>
    import __import_of_missing_module
E   ModuleNotFoundError: No module named '__import_of_missing_module'
!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! Interrupted: 1 errors during collection !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!
============================================================================================= 1 error in 3.11 seconds =============================================================================================
===================================================================== 2 failed, 92 passed, 4 skipped, 10 xfailed, 1 xpassed in 991.80 seconds =====================================================================
 * ERROR: dev-python/pytest-xdist-1.15.0::gentoo failed (test phase):
 *   Tests failed under python3.6
Comment 1 Mart Raudsepp gentoo-dev 2017-05-26 16:41:26 UTC
Though on amd64 I don't get this far, due to a segfault in AVX SIMD:

testing/acceptance_test.py::TestNodeFailure::test_disable_restart /tmp/portage/dev-python/pytest-xdist-1.15.0/temp/environment: line 3555: 14294 Segmentation fault      (core dumped) py.test -vv


#0  __memmove_avx_unaligned_erms () at ../sysdeps/x86_64/multiarch/memmove-vec-unaligned-erms.S:294
#1  0x00007f0155056d81 in memcpy (__len=<optimized out>, __src=<optimized out>, __dest=<optimized out>) at /usr/include/bits/string3.h:53
#2  _io_BufferedWriter_write_impl (buffer=0x7fff7b574660, buffer=0x7fff7b574660, self=0x7f014e2959e8) at ./Modules/_io/bufferedio.c:1952
#3  _io_BufferedWriter_write (self=0x7f014e2959e8, arg=<optimized out>) at ./Modules/_io/clinic/bufferedio.c.h:395
#4  0x00007f0154f633a9 in _PyCFunction_FastCallDict (func_obj=<built-in method write of _io.BufferedWriter object at remote 0x7f014e2959e8>, args=0x1727118, nargs=1, kwargs=kwargs@entry=0x0)
    at Objects/methodobject.c:209
#5  0x00007f0154f63777 in _PyCFunction_FastCallKeywords (func=func@entry=<built-in method write of _io.BufferedWriter object at remote 0x7f014e2959e8>, stack=<optimized out>, nargs=nargs@entry=1, 
    kwnames=kwnames@entry=0x0) at Objects/methodobject.c:295
#6  0x00007f0154fd7d7b in call_function (pp_stack=pp_stack@entry=0x7fff7b574850, oparg=<optimized out>, kwnames=kwnames@entry=0x0) at Python/ceval.c:4798
#7  0x00007f0154fd93bd in _PyEval_EvalFrameDefault (
    f=Frame 0x1726f88, for file /usr/lib64/python3.6/site-packages/execnet/gateway_base.py, line 396, in write (self=<Popen2IOMaster(popen=<Popen(_waitpid_lock=<_thread.lock at remote 0x7f014f3f5aa8>, _input=None, _communication_started=False, args=['/usr/bin/python3.6', '-u', '-c', 'import sys;exec(eval(sys.stdin.readline()))'], stdin=<_io.BufferedWriter at remote 0x7f014e2959e8>, stdout=<_io.BufferedReader at remote 0x7f014e295728>, stderr=None, pid=14717, returncode=None, universal_newlines=False, encoding=None, errors=None, _closed_child_pipe_fds=True, _child_created=True) at remote 0x7f014f41b080>, outfile=<_io.BufferedWriter at remote 0x7f014e2959e8>, infile=<_io.BufferedReader at remote 0x7f014e295728>, _read=<built-in method read of _io.BufferedReader object at remote 0x7f014e295728>, _write=<built-in method write of _io.BufferedWriter object at remote 0x7f014e2959e8>, execmodel=<ExecModel(_importdef={'get_ident': ['thread::get_ident', '_thread::get_ident'], '_start_new_thread': ['thread::start_new_thread',...(truncated), 
    throwflag=<optimized out>) at Python/ceval.c:3284
#8  0x00007f0154fd6f50 in _PyFunction_FastCall (co=<optimized out>, args=<optimized out>, nargs=2, globals=<optimized out>) at Python/ceval.c:4880
#9  0x00007f0154fd7b47 in fast_function (func=<optimized out>, stack=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>) at Python/ceval.c:4922
#10 0x00007f0154fd7c96 in call_function (pp_stack=pp_stack@entry=0x7fff7b574a30, oparg=<optimized out>, kwnames=kwnames@entry=0x0) at Python/ceval.c:4819
#11 0x00007f0154fd93bd in _PyEval_EvalFrameDefault (
    f=Frame 0x7f0120003e38, for file /usr/lib64/python3.6/site-packages/execnet/gateway_base.py, line 430, in to_io (self=<Message(msgcode=2, channelid=0, data=b'') at remote 0x7f014f3984a8>, io=<Popen2IOMaster(popen=<Popen(_waitpid_lock=<_thread.lock at remote 0x7f014f3f5aa8>, _input=None, _communication_started=False, args=['/usr/bin/python3.6', '-u', '-c', 'import sys;exec(eval(sys.stdin.readline()))'], stdin=<_io.BufferedWriter at remote 0x7f014e2959e8>, stdout=<_io.BufferedReader at remote 0x7f014e295728>, stderr=None, pid=14717, returncode=None, universal_newlines=False, encoding=None, errors=None, _closed_child_pipe_fds=True, _child_created=True) at remote 0x7f014f41b080>, outfile=<_io.BufferedWriter at remote 0x7f014e2959e8>, infile=<_io.BufferedReader at remote 0x7f014e295728>, _read=<built-in method read of _io.BufferedReader object at remote 0x7f014e295728>, _write=<built-in method write of _io.BufferedWriter object at remote 0x7f014e2959e8>, execmodel=<ExecModel(_importdef={'get_ident': ['thread::get_id...(truncated), 
    throwflag=<optimized out>) at Python/ceval.c:3284
#12 0x00007f0154fd6f50 in _PyFunction_FastCall (co=<optimized out>, args=<optimized out>, nargs=2, globals=<optimized out>) at Python/ceval.c:4880
#13 0x00007f0154fd7b47 in fast_function (func=<optimized out>, stack=<optimized out>, nargs=<optimized out>, kwnames=<optimized out>) at Python/ceval.c:4922
#14 0x00007f0154fd7c96 in call_function (pp_stack=pp_stack@entry=0x7fff7b574c10, oparg=<optimized out>, kwnames=kwnames@entry=0x0) at Python/ceval.c:4819
#15 0x00007f0154fd93bd in _PyEval_EvalFrameDefault (
    f=Frame 0x1864f98, for file /usr/lib64/python3.6/site-packages/execnet/gateway_base.py, line 984, in _send (self=<Gateway(execmodel=<ExecModel(_importdef={'get_ident': ['thread::get_ident', '_thread::get_ident'], '_start_new_thread': ['thread::start_new_thread', '_thread::start_new_thread'], 'threading': ['threading'], 'queue': ['queue', 'Queue'], 'sleep': ['time::sleep'], 'subprocess': ['subprocess'], 'socket': ['socket'], '_fdopen': ['os::fdopen'], '_lock': ['threading'], '_event': ['threading']}, backend='thread', _count=0, subprocess=<module at remote 0x7f0152d52b38>, _lock=<module at remote 0x7f01537bf408>, _event=<module at remote 0x7f01537bf408>, _start_new_thread=<built-in method start_new_thread of module object at remote 0x7f015570e818>, queue=<module at remote 0x7f014fe5e548>) at remote 0x7f014f3fdef0>, _io=<Popen2IOMaster(popen=<Popen(_waitpid_lock=<_thread.lock at remote 0x7f014f3f5aa8>, _input=None, _communication_started=False, args=['/usr/bin/python3.6', '-u', '-c', 'import sys;exec(eval(sys.std...(truncated), 
    throwflag=<optimized out>) at Python/ceval.c:3284
Comment 2 Virgil Dupras (RETIRED) gentoo-dev 2019-06-02 12:54:12 UTC
pytest-xdist currently in the tree (1.23.2) has tests passing fine and has been stabilized on many arches. Closing.