Repository navigation
v1.1.6
Winwright and Winwright.InApp 1.1.6 on nuget.org. Nothing is removed or renamed, so a suite written for 1.1.5 runs unchanged.
Scenario format
- Commands before the launch (WW582). A fixture's
beforelist runs programs once its files are staged and before its application starts, with the fixture's variables, working directory and standard input. Use it when a case is about one program's output reaching the window, such as a CLI writing a file the window reads. A command that exits with an unexpected code, or does not finish withintimeouts.launch, leaves every check of the case a hole that names the command, its exit code and the last lines it wrote. - Installed copies and self-updates (WW575). A fixture's
applicationlaunches an executable other than the project's, such as an installed copy. A step can wait on the application's process:exitsclaims the exit an update makes, andrelaunchesfollows the new copy into its window. - Unsetting inherited variables (WW564). A fixture's
unsetnames inherited variables the launch removes, so an Electron app started from VS Code opens as a window and not as Node. - Longer waits on one step (WW577). A step names its own wait with
waits, a timeout the project declares, in place ofresolveandactfor that step alone. An undeclared name is refused before the launch. - Resizing the window (WW570).
resizewithwith: "640x720"sizes the window under test in device-independent pixels, without needing the foreground. - Drag between two points of one element (WW572). A drag names
fromandtoinside its own element, in percent or device-independent pixels, so a handle drawn on a canvas can be moved. - Image checks on files (WW573). A file step claims
image, such aslongSide 2048, transparent, and a failure names the size and transparency it read.
Captures
- No more washed-out renders (WW583). An in-app render is no longer taken while an animation is still changing an element's opacity, such as a page fading in. The harness asks again until the fade stops, within the render's time budget. A fade that never stops is refused with a sentence saying so, and an element that finished fading and stays dimmed is still drawn. This needs
Winwright.InApp1.1.6 in the application.
Refusals and read-outs
- Locators hidden in an overflow (WW571). When a locator matches nothing, the refusal now says why, and names a toolbar holding items in its overflow along with the button that opens it.
- Read-out language (WW569). Without
speaking, a read-out's{language}is the language of the strings file that answers for the machine, thenlanguage.fallback. A failed read-out names its arguments and output.
MCP server
- Red cases say where they failed (WW562).
winwright_runlists, under each red case, every unmet check with its step, locator, what it read and how long it waited. A red run still writeslastRun. - The server stays up (WW567). A tool that throws answers with a refusal naming the exception, and the server keeps running. An executable that cannot start is refused naming the path it was looked for at.
- A clean protocol stream (WW563, WW568). Launched applications and read-outs have their input closed and their output drained, so nothing reaches the MCP channel. A red case ends with the last lines the application wrote.
Guest runner (this repository's run-tests-vm)
- Runs that open no window can say
-NoDeskand are no longer refused over the guest desk (WW581). - A taskbar holding the guest's foreground is cleared by one shell restart under the run's desk claim (WW580). The Start and Search overlays are dismissed before the run (WW579).
-Runexecutes as a prompt line, so a chain of commands logs in full and keeps its exit code (WW576).-Bring a,bbrings back each file (WW578).-Carrytakes build outputs, such as an installer, to the guest at their own path (WW574).
Full Changelog: v1.1.5...v1.1.6