diff --git a/.github/instructions/e2e-test-setup-parameters.instructions.md b/.github/instructions/e2e-test-setup-parameters.instructions.md new file mode 100644 index 0000000000..d15bb4f060 --- /dev/null +++ b/.github/instructions/e2e-test-setup-parameters.instructions.md @@ -0,0 +1,10 @@ +--- +applyTo: "src/AppInstallerCLIE2ETests/Helpers/TestSetup.cs" +--- + +# E2E test setup parameter documentation + +When adding a new test parameter in `src/AppInstallerCLIE2ETests/Helpers/TestSetup.cs`, also update: + +- `src/AppInstallerCLIE2ETests/README.md` to document that parameter. +- `src/AppInstallerCLIE2ETests/Test.runsettings` to keep default run parameters and parameter names in sync. diff --git a/.gitignore b/.gitignore index de37448c2f..888f81ee06 100644 --- a/.gitignore +++ b/.gitignore @@ -288,6 +288,10 @@ node_modules/ **/*.Server/ModelManifest.xml _Pvt_Extensions +# Local E2E test settings (developer-specific), keep the example one tracked +*.runsettings +!src/AppInstallerCLIE2ETests/Test.runsettings + # Paket dependency manager .paket/paket.exe paket-files/ diff --git a/src/AppInstallerCLIE2ETests/README.md b/src/AppInstallerCLIE2ETests/README.md index a4d5467440..7ad7946f41 100644 --- a/src/AppInstallerCLIE2ETests/README.md +++ b/src/AppInstallerCLIE2ETests/README.md @@ -20,9 +20,14 @@ If your tests uses the test source see the [LocalhostWebServer](#LocalhostWebSer | MsixTestInstallerPath | The MSIX (or APPX) Installer executable under test. | | ExeTestInstallerPath |The Exe Installer executable under test. | | MsiTestInstallerPath | The MSI Installer executable under test. | +| MsiTestInstallerV2Path | The v2 MSI Installer executable under test. | +| FontTestPath | The test font file used by font package scenarios. | | PackageCertificatePath | Signing Certificate Path used to certify test index source package | | PowerShellModulePath | Path to the PowerShell module manifest file under test | -| PowerShellModulePath | The local server cert file | +| LocalServerCertPath | The local server cert file. | +| InprocTestbedPath | Path to the ComInprocTestbed executable used by in-proc COM tests. | +| InprocTestbedUseTestPackage | Bool to indicate whether in-proc COM tests should target the test package. | +| ForcedExperimentalFeatures | Pipe-separated list of experimental features to force-enable during test setup. | | SkipTestSource | I solemnly swear the test won't use the local test source or the source is already set up. | #### Example of Test.runsettings with completed parameters: @@ -38,8 +43,15 @@ Assuming you clone winget-cli in c:\dev, the localhost web server is running in + + + + + + + diff --git a/src/AppInstallerCLIE2ETests/Test.runsettings b/src/AppInstallerCLIE2ETests/Test.runsettings index bbdc7f7163..445abf9128 100644 --- a/src/AppInstallerCLIE2ETests/Test.runsettings +++ b/src/AppInstallerCLIE2ETests/Test.runsettings @@ -20,7 +20,11 @@ ExeTestInstallerPath: The Exe Installer executable under test. PackageCertificatePath: Signing Certificate Path used to certify Index Source Package. PowerShellModulePath: Path to the PowerShell module manifest file under test. - LocalServerCertPathParameter: The cert used for the local server. + LocalServerCertPath: The cert used for the local server. + MsiTestInstallerV2Path: The v2 MSI Installer executable under test. + InprocTestbedPath: Path to the ComInprocTestbed executable used by in-proc COM tests. + InprocTestbedUseTestPackage: Bool to indicate whether in-proc COM tests should target the test package. + ForcedExperimentalFeatures: Pipe-separated list of experimental features to force-enable during test setup. SkipTestSource: I solemnly swear the test won't use the local test source or the source is already set up. --> @@ -35,9 +39,13 @@ + - + + + +