from pathlib import Path def test_installer_launches_admin_application_with_elevated_setup_token() -> None: script = Path("installer/SyncVito.iss").read_text(encoding="utf-8") run_section = script.split("[Run]")[1].split("[")[0] if "[Run]" in script else "" run_entries = [line for line in run_section.splitlines() if line.startswith("Filename:")] assert len(run_entries) == 2 assert all("runascurrentuser" in entry for entry in run_entries) assert "postinstall" in run_entries[0] assert 'Parameters: "--updated"' in run_entries[1] def test_installer_cleans_up_scheduled_task_on_uninstall() -> None: script = Path("installer/SyncVito.iss").read_text(encoding="utf-8") uninstall_section = script.split("[UninstallRun]")[1].split("[")[0] if "[UninstallRun]" in script else "" assert "schtasks.exe" in uninstall_section assert "{#MyAppName}" in uninstall_section