Skip to content

Bootstrap a testing harness target.#1781

Merged
grynspan merged 10 commits into
mainfrom
jgrynspan/harness-target
Jul 10, 2026
Merged

Bootstrap a testing harness target.#1781
grynspan merged 10 commits into
mainfrom
jgrynspan/harness-target

Conversation

@grynspan

@grynspan grynspan commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

This PR adds a (stub, unimplemented, incomplete, etc.) harness executable target that uses Swift Argument Parser. This target will eventually act as a host for tests, but for now just throws an error if invoked.

Checklist:

  • Code and documentation should follow the style of the Style Guide.
  • If public symbols are renamed or modified, DocC references should be updated.

This PR adds a (stub, unimplemented, incomplete, _etc._) harness executable
target that uses Swift Argument Parser. This target will eventually act as a
host for tests, but for now just throws an error if invoked.
@grynspan grynspan added this to the Swift 6.5.0 (main) milestone Jul 9, 2026
@grynspan grynspan self-assigned this Jul 9, 2026
@grynspan grynspan added enhancement New feature or request build 🧱 Affects the project's build configuration or process labels Jul 9, 2026
@grynspan grynspan added the command-line experience ⌨️ enhancements to the command line interface label Jul 9, 2026
@grynspan grynspan requested a review from harlanhaskins as a code owner July 9, 2026 19:56
@grynspan grynspan added the harness 🪢 Changes related to the testing harness label Jul 9, 2026
Comment thread Sources/Harness/CMakeLists.txt Outdated
Comment thread Sources/Harness/CMakeLists.txt Outdated
@finagolfin

Copy link
Copy Markdown
Member

Oh nice, how would this work for cross-compilation: this new harness runs on the host and communicates to the current test runners on a separate target platform over the network, or this harness runs on the target platform itself? Maybe you don't intend it for cross-compilation altogether, just seeing how we can use it.

@grynspan

Copy link
Copy Markdown
Contributor Author

@finagolfin Short answer: it should probably be possible to implement cross-device testing for Android with this tool, though we'll need your help to do it.

The exact feature set is currently unspecified; this PR just creates the new target. My initial focus will be on making it work on-device, but it will be leveraging our JSON event stream and there's no reason it couldn't draw events from off-device sources given the right application of elbow grease.

…mpletely correct? do we need to bootstrap something?)
@stmontgomery

Copy link
Copy Markdown
Contributor

@finagolfin I plan to post a proposal on the forums fairly soon describing the anticipated longer-term trajectory here, this is just a starting point as @grynspan mentioned. It's definitely something I hope can eventually support running tests on remotely-connected devices though, and it's great to hear your interest in that.

@grynspan grynspan merged commit 89035e8 into main Jul 10, 2026
24 of 26 checks passed
@grynspan grynspan deleted the jgrynspan/harness-target branch July 10, 2026 19:23
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

build 🧱 Affects the project's build configuration or process command-line experience ⌨️ enhancements to the command line interface enhancement New feature or request harness 🪢 Changes related to the testing harness

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants