Get the LocalTests running in CI again #5389

Closed
opened 2026-01-31 00:12:19 +00:00 by claunia · 2 comments
Owner

Originally created by @zadjii-msft on GitHub (Dec 4, 2019).

Originally assigned to: @zadjii-msft on GitHub.

We created LocalTests_TerminalApp as a way to separate out the tests that couldn't be run in CI.

Originally, it's because we didn't have Xaml Islands in CI, so they wouldn't work there. Then, we were able to remove the unittest's dependency on XAML Islands (#3833). However, the tests still don't work in CI, because they require the Microsoft.VCLibs.140.00.Debug framework package, which isn't deployed by default on our CI machines.

An upcoming TAEF release will let us deploy the package from our test's folder, but we need to wait for an updated TAEF for that. This task represents looping back on that thread to get the updated TAEF and configure the tests to run in CI again. Then we can get rid of the LocalTests project, and just have one set of unittests for the TerminalApp.

Originally created by @zadjii-msft on GitHub (Dec 4, 2019). Originally assigned to: @zadjii-msft on GitHub. We created `LocalTests_TerminalApp` as a way to separate out the tests that couldn't be run in CI. Originally, it's because we didn't have Xaml Islands in CI, so they wouldn't work there. Then, we were able to remove the unittest's dependency on XAML Islands (#3833). However, the tests still don't work in CI, because they require the `Microsoft.VCLibs.140.00.Debug` framework package, which isn't deployed by default on our CI machines. An upcoming TAEF release will let us deploy the package from our test's folder, but we need to wait for an updated TAEF for that. This task represents looping back on that thread to get the updated TAEF and configure the tests to run in CI again. Then we can get rid of the LocalTests project, and just have one set of unittests for the TerminalApp.
Author
Owner

@zadjii-msft commented on GitHub (Jan 8, 2020):

With #4105 merging soon, we're updated to a version of TAEF that'll work for installing framework packages automatically. However, I need to find the right way to get

the dependency AppX next to TE.exe or next to the test

so that TAEF can install it. Should that be in it's own nuget that we have the CI build pull down? Should we just ship it in our dep/ directory, and have the TestHostApp copy it over to it's output path?

This issue is now tracking just that work.

@zadjii-msft commented on GitHub (Jan 8, 2020): With #4105 merging soon, we're updated to a version of TAEF that'll work for installing framework packages automatically. However, I need to find the right way to get > the dependency AppX next to TE.exe or next to the test so that TAEF can install it. Should that be in it's own nuget that we have the CI build pull down? Should we just ship it in our `dep/` directory, and have the `TestHostApp` copy it over to it's output path? This issue is now tracking just that work.
Author
Owner

@zadjii-msft commented on GitHub (Jun 22, 2022):

2022 notes:

Tried this again in dev/migrie/b/12788-did-it-work
, specifically, 3c54c07f30.

  • I tried to remove all the package dependencies from the testhostapp, so they didn't get pulled down.
  • I tried to bundle the CRT / vclibs in with the app itself. That I think I did wrong.
  • I needed to move the localtests to run on the windows-2019 agents. On the normal agents the tests run non-interactively, and that messes with UWP deployment. Without this, you'll see some errors like 0x8000401A, CO_E_RUNAS_LOGON_FAILURE.

I bet we could fix #12788 and this in a single go, but I have hit my experience limit with the VCLibs

@zadjii-msft commented on GitHub (Jun 22, 2022): 2022 notes: Tried this again in [`dev/migrie/b/12788-did-it-work`](https://github.com/microsoft/terminal/tree/dev/migrie/b/12788-did-it-work) , specifically, 3c54c07f30fbb7e7d9bdf64272e9a804b4a67a3f. * I tried to remove all the package dependencies from the testhostapp, so they didn't get pulled down. * I tried to bundle the CRT / vclibs in with the app itself. That I think I did wrong. * I needed to move the localtests to run on the `windows-2019` agents. On the normal agents the tests run non-interactively, and that messes with UWP deployment. Without this, you'll see some errors like `0x8000401A`, `CO_E_RUNAS_LOGON_FAILURE`. I bet we could fix #12788 and this in a single go, but I have hit my experience limit with the VCLibs * https://github.com/microsoft/WindowsAppSDK/blob/main/docs/Coding-Guidelines.md * https://github.com/microsoft/terminal/pull/5661/files * https://github.com/microsoft/WindowsAppSDK/blob/main/docs/Coding-Guidelines/HybridCRT.md * https://github.com/microsoft/WindowsAppSDK/blob/main/HybridCRT.props
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#5389