Skip to content

fix: stabilize CI test harness for browser and Android cleanup - #302

Open
GitToTheHub wants to merge 23 commits into
apache:masterfrom
GitToTheHub:master
Open

GitToTheHub wants to merge 23 commits into
apache:masterfrom
GitToTheHub:master

Conversation

@GitToTheHub

@GitToTheHub GitToTheHub commented May 18, 2026 •

Copy link
Copy Markdown
Contributor

Summary

This PR ports the CI harness fixes validated in downstream plugin CI runs.

Changes

  • Ensure test framework assets are present under www/cdvtests/ for browser runs when needed.
  • Set start page to cdvtests/index.html for test execution.
  • Keep browser test-page CSP compatible with localhost/127.0.0.1 HTTP+WS endpoints used by Paramedic.
  • Add a CI fallback launcher for headless Chrome when auto-open is skipped.
  • Make device log collection best-effort so Android runs do not fail after successful Jasmine completion when adb logcat is unavailable during teardown.

Motivation

Recent CI failures were caused by harness/start-page mismatches and post-test cleanup failures, not test logic regressions.

Validation

  • Browser matrix job passes with Jasmine specs executed and reported through the Paramedic WebSocket.
  • Android matrix job no longer fails solely due to adb logcat teardown errors after successful specs.

Downstream Validation

A dedicated downstream test PR is open in apache/cordova-plugin-network-information:

That PR consumes this change chain and demonstrates successful CI runs.

Generated-By: GPT-5.3-Codex

The Cordova <asset> element in cordova-plugin-test-framework may not
reliably copy assets to www/cdvtests/ during browser platform CI runs.
Add ensureCdvTestsExists() that explicitly copies the installed plugin's
www/assets/ to www/cdvtests/ if index.html is missing.

Also revert start page back to cdvtests/index.html (the actual Jasmine
test runner) and update the CSP patching to target that file instead of
index.html (which lacks Jasmine and the test runner logic).
Use github:GitToTheHub/cordova-plugin-test-framework which includes the
jasmine boot0.js fix required for Jasmine 5.x initialization
Comment thread lib/ParamedicApp.js Fixed
GitToTheHub added a commit that referenced this pull request Jun 19, 2026
- During testing PR #302, the iOS 26.x test did not succeed by the strange error message: `xcodebuild: error: Unable to find a destination matching the provided destination specifier: { generic:1, platform:iOS Simulator } and also later iOS 26.1 is not installed. Please download and install the platform from Xcode > Settings > Components.`.After changing xcode-version: 26.1 to xcode-version: 26.x XCode 26.5 was choosen and the error disappeared
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.

2 participants