[PR #2294] [MERGED] Add a Local Test binary, to enable local TerminalApp testing #24874

Open
opened 2026-01-31 09:05:52 +00:00 by claunia · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/microsoft/terminal/pull/2294
Author: @zadjii-msft
Created: 8/6/2019
Status: Merged
Merged: 8/13/2019
Merged by: @zadjii-msft

Base: masterHead: dev/migrie/f/localtests


📝 Commits (7)

  • 6d840f5 This is the start of me trying to enable local unittesting again
  • 999c492 This shockingly works
  • 92a3bce Cleaning this all up for review.
  • 2423159 Couple things I noticed in the diff from master
  • dab5997 Merge remote-tracking branch 'origin/master' into dev/migrie/f/localtests
  • 3d0b07b Merge branch 'master' into dev/migrie/f/localtests
  • 41b1732 Apply @dhowett-msft's suggestions from code review

📊 Changes

16 files changed (+568 additions, -177 deletions)

View changed files

📝 OpenConsole.sln (+24 -0)
src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp (+44 -0)
src/cascadia/LocalTests_TerminalApp/TabTests.cpp (+110 -0)
src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.AppxManifest.prototype.xml (+52 -0)
src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.manifest (+23 -0)
src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.vcxproj (+176 -0)
src/cascadia/LocalTests_TerminalApp/precomp.cpp (+4 -0)
src/cascadia/LocalTests_TerminalApp/precomp.h (+53 -0)
src/cascadia/ut_app/SettingsTests.cpp (+0 -46)
src/cascadia/ut_app/TabTests.cpp (+0 -112)
📝 src/cascadia/ut_app/TerminalApp.UnitTests.vcxproj (+0 -2)
📝 src/cascadia/ut_app/precomp.h (+5 -16)
tools/GenerateAppxFromManifest.ps1 (+74 -0)
📝 tools/OpenConsole.psm1 (+1 -1)
📝 tools/runut.cmd (+1 -0)
📝 tools/tests.xml (+1 -0)

📄 Description

Summary of the Pull Request

In #1164 we learned that our CI doesn't support WinRT testing. This made us all sad. Since that merged, we haven't really added any TerminalApp tests, because it's a little too hard. You'd have to uncomment the entire file, and if the list of types changed you'd have to manually update the sxs manifest and appxmanifest.

Since that was all insane, I created a new Terminal App unittesting project without those problems.

  1. The project is not named UnitTest*, so the CI won't run it, but it will run locally.
  2. The project will auto-generate its SxS manifest, using the work from #1987.
  3. We'll use the SxS manifest from step 2 to generate an AppxManifest for running packaged tests.

PR Checklist

  • Closes Guidance: Contributing.md & Coding Style docs needed (#1210)
  • CLA signed. If not, go over here and sign the CLA
  • Tests added/passed
  • Requires documentation to be updated
  • I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx

I'm 90% just opening this PR to make sure it works in CI.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/microsoft/terminal/pull/2294 **Author:** [@zadjii-msft](https://github.com/zadjii-msft) **Created:** 8/6/2019 **Status:** ✅ Merged **Merged:** 8/13/2019 **Merged by:** [@zadjii-msft](https://github.com/zadjii-msft) **Base:** `master` ← **Head:** `dev/migrie/f/localtests` --- ### 📝 Commits (7) - [`6d840f5`](https://github.com/microsoft/terminal/commit/6d840f539b4f89356295d7e6788e0085e320615d) This is the start of me trying to enable local unittesting again - [`999c492`](https://github.com/microsoft/terminal/commit/999c492724e2a0a8810f7722107054d84b4197f5) This shockingly works - [`92a3bce`](https://github.com/microsoft/terminal/commit/92a3bceb387838c765b74225e7462e1569ca3173) Cleaning this all up for review. - [`2423159`](https://github.com/microsoft/terminal/commit/24231590358ed58965b84cd890af194c45493e91) Couple things I noticed in the diff from master - [`dab5997`](https://github.com/microsoft/terminal/commit/dab5997e4511d54270e5771112b337b0ca8c03b4) Merge remote-tracking branch 'origin/master' into dev/migrie/f/localtests - [`3d0b07b`](https://github.com/microsoft/terminal/commit/3d0b07b0f46945d9fc0d22b50f22ea1afbc75f1d) Merge branch 'master' into dev/migrie/f/localtests - [`41b1732`](https://github.com/microsoft/terminal/commit/41b1732586fee579cc20474975df731cacba52e8) Apply @dhowett-msft's suggestions from code review ### 📊 Changes **16 files changed** (+568 additions, -177 deletions) <details> <summary>View changed files</summary> 📝 `OpenConsole.sln` (+24 -0) ➕ `src/cascadia/LocalTests_TerminalApp/SettingsTests.cpp` (+44 -0) ➕ `src/cascadia/LocalTests_TerminalApp/TabTests.cpp` (+110 -0) ➕ `src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.AppxManifest.prototype.xml` (+52 -0) ➕ `src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.manifest` (+23 -0) ➕ `src/cascadia/LocalTests_TerminalApp/TerminalApp.LocalTests.vcxproj` (+176 -0) ➕ `src/cascadia/LocalTests_TerminalApp/precomp.cpp` (+4 -0) ➕ `src/cascadia/LocalTests_TerminalApp/precomp.h` (+53 -0) ➖ `src/cascadia/ut_app/SettingsTests.cpp` (+0 -46) ➖ `src/cascadia/ut_app/TabTests.cpp` (+0 -112) 📝 `src/cascadia/ut_app/TerminalApp.UnitTests.vcxproj` (+0 -2) 📝 `src/cascadia/ut_app/precomp.h` (+5 -16) ➕ `tools/GenerateAppxFromManifest.ps1` (+74 -0) 📝 `tools/OpenConsole.psm1` (+1 -1) 📝 `tools/runut.cmd` (+1 -0) 📝 `tools/tests.xml` (+1 -0) </details> ### 📄 Description <!-- Enter a brief description/summary of your PR here. What does it fix/what does it change/how was it tested (even manually, if necessary)? --> ## Summary of the Pull Request In #1164 we learned that our CI doesn't support WinRT testing. This made us all sad. Since that merged, we haven't really added any TerminalApp tests, because it's a little too hard. You'd have to uncomment the entire file, and if the list of types changed you'd have to manually update the sxs manifest and appxmanifest. Since that was all insane, I created a new Terminal App unittesting project without those problems. 1. The project is not named *Unit*Test*, so the CI won't run it, but it will run locally. 2. The project will auto-generate its SxS manifest, using the work from #1987. 3. We'll use the SxS manifest from step 2 to generate an AppxManifest for running packaged tests. <!-- Please review the items on the PR checklist before submitting--> ## PR Checklist * [x] Closes #1210 * [x] CLA signed. If not, go over [here](https://cla.opensource.microsoft.com/microsoft/Terminal) and sign the CLA * [x] **Tests added/passed** * [ ] Requires documentation to be updated * [x] I've discussed this with core contributors already. If not checked, I'm ready to accept this work might be rejected in favor of a different grand plan. Issue number where discussion took place: #xxx I'm 90% just opening this PR to make sure it works in CI. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
claunia added the pull-request label 2026-01-31 09:05:52 +00:00
Sign in to join this conversation.
No Label pull-request
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: starred/terminal#24874