Failing testDaemonStatusKillRestartRecheck
Nessuno ha ancora preso questa issue.
- Lingua principale
- Python
- Stelle
- 20.6k
- Fork
- 3.3k
- Metriche di merge delle PR
- Metriche PR in attesa
Descrizione
Bug Report
testDaemonStatusKillRestartRecheck is randomly failing locally.
To Reproduce
- Perform setup according to contribution guidelines:
$ cd /tmp
$ git clone https://githb.com/python/mypy
$ cd mypy
$ python -m virtualenv env && . env/bin/activate
$ python -m pip install -r test-requirements.txt
$ python -m pip install -e .
$ hash -r
- Run test with
pytest -k testDaemonStatusKillRestartRecheck.
Expected Behavior
Test should always pass.
Actual Behavior
I got 8 failures and 2 passes running the same test 10 times in a row (for i in {1..10}; do pytest -k testDaemonStatusKillRestartRecheck; done). Failure result:
====================================== test session starts ======================================
platform linux -- Python 3.10.2, pytest-7.1.1, pluggy-1.0.0
rootdir: /tmp/mypy, configfile: pytest.ini, testpaths: mypy/test, mypyc/test
plugins: forked-1.4.0, cov-2.12.1, xdist-2.5.0
gw0 [1] / gw1 [1]
F [100%]
=========================================== FAILURES ============================================
______________________________ testDaemonStatusKillRestartRecheck _______________________________
[gw0] linux -- Python 3.10.2 /tmp/env/bin/python
data: /tmp/mypy/test-data/unit/daemon.test:142:
../mypy/mypy/test/testdaemon.py:34: in run_case
test_daemon(testcase)
../mypy/mypy/test/testdaemon.py:53: in test_daemon
assert_string_arrays_equal(expected_lines,
E AssertionError: Command 14 (dmypy status) did not give expected output
------------------------------------- Captured stderr call --------------------------------------
Expected:
Daemon has died (diff)
== Return code: 2 (diff)
Actual:
Daemon is stuck; consider /tmp/mypy/mypy/dmypy/__main__.py kill (diff)
error : [Errno 111] Connection refused (diff)
== Return code: 2 (diff)
Alignment of first line difference:
E: Daemon has died
A: Daemon is stuck; consider /tmp/mypy/mypy/dmypy/__main__.py kill
^
==================================== short test summary info ====================================
FAILED mypy/test/testdaemon.py::DaemonSuite::daemon.test::testDaemonStatusKillRestartRecheck
======================================= 1 failed in 3.11s =======================================
Your Environment
- Mypy version used:
mypy 0.950+dev.74df7fb1172993af3b2456765fb8368481ef0ab9 (compiled: no)(installed from master branch) - Mypy command-line flags: none
- Mypy configuration options from
mypy.ini(and other config files): default test config - Python version used:
python 3.10.2 - Operating system and version: Ubuntu 21.10
$ uname -a
Linux pc 5.13.0-39-generic #44-Ubuntu SMP Thu Mar 24 15:35:05 UTC 2022 x86_64 x86_64 x86_64 GNU/Linux
$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 21.10
Release: 21.10
Codename: impish
I'm not sure that I shouldn't report it as a crash instead, but hope it isn't so important.
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia con mypy/test/testdaemon.py e il caso di test test-data/unit/daemon.test alla riga 142. Esegui ripetutamente pytest -k testDaemonStatusKillRestartRecheck, confrontando l’output di stato atteso del daemon con il risultato intermittente «Daemon is stuck». È concluso quando il test passa in modo affidabile e segnala l’output atteso «Daemon has died» quando il daemon non è disponibile.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- python
- Ambito
- testing-qa
- Tipo di issue
- Bug
- Difficoltà
- 3/5
- Tempo stimato
- 1-2 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 45/100