-
Notifications
You must be signed in to change notification settings - Fork 1.7k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Enable WinUI Controls Test Pipeline #17221
Merged
Merged
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PureWeen
force-pushed
the
winui_controls_tests
branch
2 times, most recently
from
September 7, 2023 16:15
82c5072
to
e84fca4
Compare
jfversluis
force-pushed
the
winui_controls_tests
branch
2 times, most recently
from
September 14, 2023 09:55
fb87bf1
to
4a5df50
Compare
PureWeen
force-pushed
the
winui_controls_tests
branch
from
September 15, 2023 16:41
a61c388
to
e19534b
Compare
jfversluis
force-pushed
the
winui_controls_tests
branch
from
September 18, 2023 07:50
c2c72f1
to
a5a3cc9
Compare
jfversluis
force-pushed
the
winui_controls_tests
branch
from
September 19, 2023 07:08
321778c
to
f4b4eb5
Compare
jfversluis
force-pushed
the
winui_controls_tests
branch
from
September 20, 2023 11:08
ad4f6f2
to
f3f10cd
Compare
PureWeen
force-pushed
the
winui_controls_tests
branch
from
September 20, 2023 22:48
f3f10cd
to
1ddfdf5
Compare
Merged
PureWeen
requested review from
mattleibow and
rmarinho
and removed request for
StephaneDelcroix and
rachelkang
September 21, 2023 16:13
/rebase |
github-actions
bot
force-pushed
the
winui_controls_tests
branch
from
September 21, 2023 23:44
74fc520
to
51456c4
Compare
jfversluis
approved these changes
Sep 22, 2023
mattleibow
approved these changes
Sep 22, 2023
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Labels
area-testing
Unit tests, device tests
fixed-in-8.0.0-rc.2.9373
Look for this fix in 8.0.0-rc.2.9373!
platform/windows 🪟
t/housekeeping ♻︎
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Description of Change
Enables the Controls projects device tests for Mac Catalyst. A couple of things to note:
How These Tests Get Executed / Good To Know
Because we run the tests for Controls per category, that also means the test results are divided as such. On top of that, the Windows app knows two variations: packaged (distributed through an MSIX typically) and unpackaged (more traditional exe + dlls). Because of this combination the flow of tests is a bit different than the rest.
Because tests are ran by category, each test should be in a category. Tests that are not in a category will be ran with each test run.
windows.cake
script is used for all projects so also Core, Graphics, etc. and only this project, Controls, needs special treatment. Therefore there is some logic added in the Cake script to differentiate between Controls and the rest. To this end the Cake script has a variableisControlsProjectTestRun
that checks if the project to be tested ends withControls.DeviceTests.csproj
.{category count}
the test runner is now started and the loop count is upped for each one. Each loop, for a packaged app, has a 10 second timeout. This is arbitrary and seems good enough for now. This is because packaged apps can only be started through PowerShell and going through Cake, to cmd, to PowerShell to a deployed app it seems impossible to block the thread to wait on it. Unpackaged apps do block the thread and run sequentially. To support all this there is a dedicatedControlsHeadlessTestRunner
in the Windows test runner that is only used for the Controls project when running headless.TestResults-*.xml
files and do an XPath query to see if there is a failed count of > 0. If there is, we throw an exception from the Cake script to fail the pipeline.Issues Fixed
Related to #11236