#!/usr/bin/env python3 # Copyright (c) 2026 Storm Dragon # Authors: Storm Dragon, Angus Kola # SPDX-License-Identifier: GPL-3.0-or-later """Verify messaging adapters and X11 shortcuts without touching the reader.""" import os from pathlib import Path import sys sys.dont_write_bytecode = True from native_test_session import run_private_session environment = dict(os.environ, GOCACHE="/tmp/cthulhu-go-cache", GOPROXY="off", CTHULHU_NATIVE_MUMBLE="1", CTHULHU_NATIVE_MESSAGING="1", CTHULHU_NATIVE_X11="1", QT_QPA_PLATFORM="xcb", QT_LINUX_ACCESSIBILITY_ALWAYS_ON="1", NO_AT_BRIDGE="0") checks = [ ("./internal/atspi", "TestNativeMumbleTranscriptCapture"), ("./internal/atspi", "TestNativeMumbleTableRows"), ("./internal/atspi", "TestNativePidginTranscriptCapture"), ("./internal/app", "TestNativeMessagingCopyPreservesClipboardText"), ("./internal/platform/xorg", "TestNativeLearnModeCapturesKeysAndRestoresCommands"), ] for package, test in checks: result = run_private_session( ["xvfb-run", "-a", "-s", "-screen 0 1024x768x24", "dbus-run-session", "--", "go", "test", package, "-run", "^" + test + "$", "-count=1", "-v", "-timeout=60s"], env=environment, cwd=Path(__file__).resolve().parents[1]) if result.returncode: sys.exit(result.returncode)