pytest-dev / pytest-dev/execnet

Test failure with enabled warnings

Abierto
#31 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Nadie ha tomado este issue todavía.

Lenguaje dominante
Python
Estrellas
102
Forks
47
Métricas de merge de PR
Sin PR fusionados en 30 d

Descripción

Execnet has 1 additional test failure with Python >=3.2 and enabled warnings (using e.g. PYTHONWARNINGS="d,i::ImportWarning" environmental variable) due to unexpected ResourceWarning in stderr.

$ PYTHONPATH="$(pwd)" PYTHONWARNINGS="d,i::ImportWarning" py.test-3.3 testing
==================================================================== test session starts ====================================================================
platform linux -- Python 3.3.5 -- py-1.4.20 -- pytest-2.5.2
gateway test setup scope: session
execnet: /tmp/execnet/execnet/__init__.py -- 1.2.0
collected 916 items 

testing/test_basics.py ...................ss.....ss.....ss.F.....
testing/test_channel.py ..s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s.
testing/test_gateway.py ..s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s...s......s.ss
testing/test_multi.py ..s.xx
testing/test_termination.py .....ss.xxxxxss
testing/test_threadpool.py ......x.......
testing/test_basics.py sssssssssssssssssssss
testing/test_channel.py ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
testing/test_gateway.py sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
testing/test_multi.py ssssss
testing/test_termination.py sssssssssssssss
testing/test_threadpool.py ssssssssssssss
testing/test_basics.py sssssssssssssssssssss
testing/test_channel.py ssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
testing/test_gateway.py sssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssssss
testing/test_multi.py ssssss
testing/test_termination.py sssssssssssssss
testing/test_threadpool.py ssssssssssssss
testing/test_basics.py .....ss.....ss................ss..
testing/test_channel.py s.
testing/test_fixes.py ..
testing/test_gateway.py ............s.
testing/test_multi.py ..............
testing/test_rsync.py ...........
testing/test_serializer.py ...............
testing/test_termination.py ......ss
testing/test_xspec.py .....................ss.

========================================================================= FAILURES ==========================================================================
_____________________________________________________________ test_stdouterrin_setnull[thread] ______________________________________________________________

execmodel = <ExecModel 'thread'>

    @pytest.mark.skipif("not hasattr(os, 'dup')")                                                                                                            
    def test_stdouterrin_setnull(execmodel):                                                                                                                 
        cap = py.io.StdCaptureFD()                                                                                                                           
        gateway_base.init_popen_io(execmodel)                                                                                                                
        os.write(1, "hello".encode('ascii'))                                                                                                                 
        if os.name == "nt":                                                                                                                                  
            os.write(2, "world")
        os.read(0, 1)
        out, err = cap.reset()
        assert not out
>       assert not err
E       assert not "/tmp/execnet/testing/test_basics.py:196: ResourceWarning: unclosed file <_io.TextIOWrapper name=13 mode='r' encoding=...file <_io.TextIOWrapper name=1 mode='w' encoding='UTF-8'>\n  setattr(sys, patchsysdict[self.targetfd], self._oldsys)\n"

testing/test_basics.py:203: AssertionError
---------------------------------------------------------------------- Captured stderr ----------------------------------------------------------------------
/usr/lib64/python3.3/site-packages/py/_io/capture.py:77: ResourceWarning: unclosed file <_io.TextIOWrapper name=0 mode='r' encoding='UTF-8'>
  setattr(sys, patchsysdict[self.targetfd], self._oldsys)
================================================================== short test summary info ==================================================================
XFAIL testing/test_multi.py::test_safe_terminate[thread]
  reason: execution model 'thread' does not support task count
XFAIL testing/test_multi.py::test_safe_terminate2[thread]
  reason: execution model 'thread' does not support task count
XFAIL testing/test_termination.py::test_terminate_implicit_does_trykill[sys.executable-thread]
  reason: only os threading model supported
XFAIL testing/test_termination.py::test_terminate_implicit_does_trykill[python3.3-thread]
  reason: only os threading model supported
XFAIL testing/test_termination.py::test_terminate_implicit_does_trykill[python3.2-thread]
  reason: only os threading model supported
XFAIL testing/test_termination.py::test_terminate_implicit_does_trykill[python2.6-thread]
  reason: only os threading model supported
XFAIL testing/test_termination.py::test_terminate_implicit_does_trykill[python2.7-thread]
  reason: only os threading model supported
XFAIL testing/test_threadpool.py::test_limited_size[thread]
  WorkerPool does not implement limited size
SKIP [54] /tmp/execnet/testing/conftest.py:66: no 'gspecs' value found
SKIP [2] /usr/lib64/python3.3/site-packages/_pytest/skipping.py:132: condition: sys.version>="3.0"
SKIP [249] /tmp/execnet/testing/conftest.py:177: could not import 'eventlet'
SKIP [17] /tmp/execnet/testing/conftest.py:129: no pypy found
SKIP [17] /tmp/execnet/testing/conftest.py:129: no jython found
SKIP [249] /tmp/execnet/testing/conftest.py:177: could not import 'gevent'
=============================================== 1 failed, 319 passed, 588 skipped, 8 xfailed in 48.32 seconds ===============================================
sys:1: ResourceWarning: unclosed <socket.socket object, fd=17, family=2, type=1, proto=0>
sys:1: ResourceWarning: gc: 4 uncollectable objects at shutdown; use gc.set_debug(gc.DEBUG_UNCOLLECTABLE) to list them

Guía de contribución

No hay ninguna guía de contribución indexada para este repositorio

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Línea de trabajo

Reproduce la ejecución con las advertencias habilitadas y empieza con testing/test_basics.py::test_stdouterrin_setnull, especialmente con la llamada a gateway_base.init_popen_io(execmodel). Inspecciona el stderr capturado y el manejo relacionado de los flujos estándar; se considera terminado cuando la prueba pasa con Python 3.2+ y las advertencias habilitadas sin una salida inesperada de ResourceWarning.

Escrito por el modelo de indexación a partir del texto del issue.

Evaluación

Stack tecnológico
python
Área
testing-qa
Tipo de issue
Error
Dificultad
3/5
Tiempo estimado
1-2 días
Estado de actividad
Estancado
Claridad
Bastante claro
Aptitud para principiantes
45/100

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.