from pathlib import Path ROOT = Path(__file__).resolve().parents[1] def test_deploy_uses_uploaded_tar_and_versioned_container(): script = (ROOT / "scripts" / "deploy-routeros.sh").read_text() assert 'CONTAINER_NAME="suricata_${VERSION}"' in script assert 'ROOT_DIR="/containers/${CONTAINER_NAME}/root"' in script assert 'IMAGE_TAR_ROS="${1:-}"' in script assert '/container/add name="${CONTAINER_NAME}" file="${IMAGE_TAR_ROS}"' in script assert 'build-routeros.sh' not in script assert 'ROUTER_ARCH' not in script assert '/container/get' not in script def test_upload_helper_only_accepts_ready_tar(): script = (ROOT / "scripts" / "upload-routeros-image.sh").read_text() assert 'IMAGE_PATH="${1:-}"' in script assert 'build-routeros.sh' not in script assert 'ROUTER_ARCH' not in script assert '/container/add' not in script assert '/import' not in script def test_upgrade_helper_reuses_existing_routeros_setup_only(): script = (ROOT / "scripts" / "upgrade-routeros-container.sh").read_text() assert 'CONTAINER_NAME="suricata_${VERSION}"' in script assert 'ROOT_DIR="/containers/${CONTAINER_NAME}/root"' in script assert '/container/add name="${CONTAINER_NAME}" file="${IMAGE_TAR_ROS}"' in script assert 'interface="${CONTAINER_VETH}"' in script assert 'mountlists="${CONTAINER_MOUNTLIST}"' in script assert 'envlist="${CONTAINER_ENVLIST}"' in script assert '/container/get' not in script assert '/interface/bridge/add' not in script assert '/interface/veth/add' not in script assert '/ip/address/add' not in script assert '/ip/firewall/nat/add' not in script assert '/tool/sniffer/set' not in script assert '/container/envs/add' not in script assert '/container/mounts/add' not in script