Repository navigation
tests: dpkt-gated tests have never run on any CI path (28 methods, 6 files) #729
Description
Describe the bug
dpkt is declared only in the DPKT extra (pyproject.toml:135) and in all (:217). No CI job installs either — the three install lines in .github/workflows/unit-tests.yml are .[test] (:82) and .[test,Scapy] (:128, :247). So every @unittest.skipUnless(HAS_RUNTIME and HAS_DPKT, ...) test has never executed on any CI path, in any job, on any Python version. They report as skips, which is indistinguishable from a pass in the summary line.
Measured by AST — 28 test methods across 6 files:
| Count | File |
|---|---|
| 20 | tests/toolkit/test_dpkt_unit.py |
| 4 | tests/interface/test_misc.py |
| 1 each | tests/foundation/test_extraction.py, tests/interface/test_core.py, tests/integration/test_engine_parity.py, tests/integration/test_engine_runtime.py |
The last two are the sharp end: they live in tests/integration/, which is the job whose entire purpose is exercising the runtime engines.
Reproduction
$ grep -n 'pip install -e' .github/workflows/unit-tests.yml
82: python -m pip install -e '.[test]'
128: python -m pip install -e '.[test,Scapy]'
247: python -m pip install -e '.[test,Scapy]'
$ python -c "import re;t=open('pyproject.toml').read();print([n for n,b in re.findall(r'^(\w+)\s*=\s*\[(.*?)\]',t,re.S|re.M) if 'dpkt' in b])"
['DPKT', 'all']Expected behavior
Either the DPKT extra joins the integration/gate install line so those 28 tests actually run, or the skip is made deliberate and visible so nobody reads it as coverage.
Additional context
Pre-existing and unrelated to #715 — found incidentally while measuring #727's skip-set. Scapy is already installed this way (:128), so the precedent for adding an engine extra to that line exists. Note HAS_RUNTIME gates the same tests, so adding dpkt alone may not be sufficient; check what HAS_RUNTIME requires before assuming a one-word fix.
Metadata
Metadata
Assignees
Labels
Projects
- StatusShow more project fieldsDone
Activity
test: tie each HAS_* gate to the install line of every CI job that re…