- decnet/engine/ — container lifecycle (deploy, teardown, status); _kill_api removed - decnet/collector/ — Docker log streaming (moved from web/collector.py) - decnet/mutator/ — mutation engine (no longer imports from cli or duplicates deployer code) - decnet/fleet.py — shared decky-building logic extracted from cli.py Cross-contamination eliminated: - web router no longer imports from decnet.cli - mutator no longer imports from decnet.cli - cli no longer imports from decnet.web - _kill_api() moved to cli (process management, not engine concern) - _compose_with_retry duplicate removed from mutator
67 lines
1.7 KiB
Python
67 lines
1.7 KiB
Python
"""Smoke test: verify the package and all submodules import cleanly."""
|
|
import importlib
|
|
import pytest
|
|
|
|
|
|
MODULES = [
|
|
"decnet",
|
|
"decnet.cli",
|
|
"decnet.config",
|
|
"decnet.composer",
|
|
"decnet.engine",
|
|
"decnet.engine.deployer",
|
|
"decnet.collector",
|
|
"decnet.collector.worker",
|
|
"decnet.mutator",
|
|
"decnet.mutator.engine",
|
|
"decnet.fleet",
|
|
"decnet.network",
|
|
"decnet.archetypes",
|
|
"decnet.distros",
|
|
"decnet.os_fingerprint",
|
|
"decnet.ini_loader",
|
|
"decnet.custom_service",
|
|
"decnet.correlation",
|
|
"decnet.correlation.engine",
|
|
"decnet.correlation.graph",
|
|
"decnet.correlation.parser",
|
|
"decnet.logging",
|
|
"decnet.logging.file_handler",
|
|
"decnet.logging.forwarder",
|
|
"decnet.logging.syslog_formatter",
|
|
"decnet.services",
|
|
"decnet.services.registry",
|
|
"decnet.services.base",
|
|
"decnet.services.ssh",
|
|
"decnet.services.ftp",
|
|
"decnet.services.http",
|
|
"decnet.services.smb",
|
|
"decnet.services.rdp",
|
|
"decnet.services.smtp",
|
|
"decnet.services.mysql",
|
|
"decnet.services.postgres",
|
|
"decnet.services.redis",
|
|
"decnet.services.mongodb",
|
|
"decnet.services.mssql",
|
|
"decnet.services.elasticsearch",
|
|
"decnet.services.ldap",
|
|
"decnet.services.k8s",
|
|
"decnet.services.docker_api",
|
|
"decnet.services.vnc",
|
|
"decnet.services.telnet",
|
|
"decnet.services.tftp",
|
|
"decnet.services.snmp",
|
|
"decnet.services.sip",
|
|
"decnet.services.mqtt",
|
|
"decnet.services.llmnr",
|
|
"decnet.services.imap",
|
|
"decnet.services.pop3",
|
|
"decnet.services.conpot",
|
|
"decnet.services.registry",
|
|
]
|
|
|
|
|
|
@pytest.mark.parametrize("module", MODULES)
|
|
def test_module_imports(module):
|
|
importlib.import_module(module)
|