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.
Describe the bug
dpktis declared only in theDPKTextra (pyproject.toml:135) and inall(:217). No CI job installs either — the three install lines in.github/workflows/unit-tests.ymlare.[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:
tests/toolkit/test_dpkt_unit.pytests/interface/test_misc.pytests/foundation/test_extraction.py,tests/interface/test_core.py,tests/integration/test_engine_parity.py,tests/integration/test_engine_runtime.pyThe last two are the sharp end: they live in
tests/integration/, which is the job whose entire purpose is exercising the runtime engines.Reproduction
Expected behavior
Either the
DPKTextra joins theintegration/gateinstall 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.
Scapyis already installed this way (:128), so the precedent for adding an engine extra to that line exists. NoteHAS_RUNTIMEgates the same tests, so addingdpktalone may not be sufficient; check whatHAS_RUNTIMErequires before assuming a one-word fix.