#/apps/aroflo_connector_app/ui_automation/commands/smoke.py
from playwright.sync_api import sync_playwright
from ..core.artifacts import create_run_dir
from ..auth.session import ensure_logged_in


def cmd_smoke(cfg) -> int:
    run_dir = create_run_dir(cfg, "smoke")

    with sync_playwright() as p:
        browser = p.chromium.launch(headless=cfg.headless, slow_mo=cfg.slow_mo_ms)
        ctx = browser.new_context(storage_state=str(cfg.state_file))
        page = ctx.new_page()

        ensure_logged_in(page, cfg, run_dir, "", allow_mfa=False)

        ctx.close()
        browser.close()

    print("[UI] smoke OK")
    print(f"[UI] Artifacts: {run_dir}")
    return 0
