from pathlib import Path import subprocess REPO_ROOT = Path(__file__).resolve().parents[2] SCRIPT_PATH = REPO_ROOT / "deploy" / "deploy-to-nas.sh" def test_sh_dry_run_uses_default_nas_target(): result = subprocess.run( ["bash", str(SCRIPT_PATH), "--dry-run"], cwd=REPO_ROOT, capture_output=True, text=True, ) assert result.returncode == 0 assert "Host: 116.62.17.81" in result.stdout assert "Port: 9444" in result.stdout assert "Username: wkc" in result.stdout assert "RemoteRoot: /volume1/webapp/ccdi" in result.stdout def test_sh_dry_run_accepts_override_arguments(): result = subprocess.run( [ "bash", str(SCRIPT_PATH), "10.0.0.8", "2222", "deploy-user", "secret", "/volume2/custom/app", "--dry-run", ], cwd=REPO_ROOT, capture_output=True, text=True, ) assert result.returncode == 0 assert "Host: 10.0.0.8" in result.stdout assert "Port: 2222" in result.stdout assert "Username: deploy-user" in result.stdout assert "RemoteRoot: /volume2/custom/app" in result.stdout