Skip to content

Test real keyboard input and settings on an API 35 emulator - #15

Open
GPLaider wants to merge 3 commits into
mainfrom
test/ime-smoke-ci
Open

GPLaider wants to merge 3 commits into
mainfrom
test/ime-smoke-ci

Conversation

@GPLaider

@GPLaider GPLaider commented Nov 8, 2026 •

Copy link
Copy Markdown
Owner

Adds an isolated keyboard/editor fixture that enables and selects KeliBoard, touches the visible q/w/e keys, asserts exactly qwe, and opens the main settings screen. The test exposed stale accessibility coordinates; virtual key queries now refresh the keyboard's screen position so injected touches reach the keys.

The existing testRunTestsUnitTest command remains in place. A following API 35/default/x86_64 emulator job explicitly prepares SDK command-line tools and builds the smoke APKs, runs the same Python/ADB script, and uploads screenshots, XML, Logcat, command output and PASS/FAIL JSON. Both jobs use JDK 21 for Robolectric API 36; app bytecode remains Java 17 and minSdk remains 21.

The runner restores and verifies the original IME settings, removes newly installed test apps, preserves partial output on timeout, and requires evidence from the current run. Android CLI layout/screenshot diagnostics are optional. Official CLI/Codex-plugin installation, local commands and tool requirements are documented in tools/ime-smoke/README.md. No cloud authentication, billing setup or remote device reservation is used.

Validation: 285 existing unit tests passed with no failures/errors/skips; x86_64 APK builds passed; local API 35 Pixel 2 smoke tests passed both with ADB alone and with Android CLI diagnostics. Missing-device and injected-timeout failure paths passed, including restoration after failure. actionlint, Python/XML parsing and whitespace checks passed. Hosted Ubuntu CI also passed both the existing unit-test job and the API 35 emulator smoke job: https://github.com/GPLaider/KeliBoard/actions/runs/42506347159. Downloaded artifacts confirm all three checks passed, both screenshots/XML pairs are present, and cleanup/diagnostic error lists are empty. Physical-device input, Korean composition, gestures and minified variants are not claimed as verified. Based on merged main baf52651; PR #8 is excluded and unchanged.

@GPLaider
GPLaider marked this pull request as ready for review November 8, 2026 17:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant