diff options
author | Sean Hall <r.sean.hall@gmail.com> | 2021-05-19 10:21:50 -0500 |
---|---|---|
committer | Sean Hall <r.sean.hall@gmail.com> | 2021-05-19 12:15:13 -0500 |
commit | d5a183de3ba20d7baddf5e57e3c9605658524e32 (patch) | |
tree | a52177d64414ab1e157dd83f0681138d2ab99954 /src/test | |
parent | 2c085b3aa89150fff9a0ea6df2cde0ce56e3066d (diff) | |
download | wix-d5a183de3ba20d7baddf5e57e3c9605658524e32.tar.gz wix-d5a183de3ba20d7baddf5e57e3c9605658524e32.tar.bz2 wix-d5a183de3ba20d7baddf5e57e3c9605658524e32.zip |
Try to make building Bal.wixext and IntegrationBurn faster.
Diffstat (limited to 'src/test')
-rw-r--r-- | src/test/burn/README.md | 31 |
1 files changed, 6 insertions, 25 deletions
diff --git a/src/test/burn/README.md b/src/test/burn/README.md index 6c6e0dd9..1f2168cf 100644 --- a/src/test/burn/README.md +++ b/src/test/burn/README.md | |||
@@ -1,6 +1,6 @@ | |||
1 | # integration | 1 | # integration |
2 | 2 | ||
3 | This repo is for building installers, and then executing xunit tests that run them and verify that they worked. | 3 | This layer is for building installers, and then executing xunit tests that run them and verify that they worked. |
4 | 4 | ||
5 | ## Running tests | 5 | ## Running tests |
6 | 6 | ||
@@ -9,42 +9,23 @@ Depending on who you talk to, these are integration or system-level or end-to-en | |||
9 | They modify machine state so it's strongly recommended *not* to run these tests on your dev box. | 9 | They modify machine state so it's strongly recommended *not* to run these tests on your dev box. |
10 | They should be run on a VM instead, where you can easily roll back. | 10 | They should be run on a VM instead, where you can easily roll back. |
11 | 11 | ||
12 | 1. Run appveyor.cmd to build everything (the tests will refuse to run). | 12 | 1. Run build.cmd to build everything (the tests will not automatically run). |
13 | 1. Copy the build\Release\netcoreapp3.1 folder to your VM. | 13 | 1. Copy the build\IntegrationBurn\Debug\netcoreapp3.1 folder to your VM. |
14 | 1. Open a command prompt and navigate to the netcoreapp3.1 folder. | 14 | 1. Open an elevated command prompt and navigate to the netcoreapp3.1 folder. |
15 | 1. Run the runtests.cmd file to run the tests. | 15 | 1. Run the runtests.cmd file to run the tests. |
16 | 16 | ||
17 | You can modify the runtests.cmd to run specific tests. | 17 | You can modify the runtests.cmd to run specific tests. |
18 | For example, the following line runs only the specified test: | 18 | For example, the following line runs only the specified test: |
19 | 19 | ||
20 | > dotnet test --filter WixToolsetTest.BurnE2E.BasicFunctionalityTests.CanInstallAndUninstallSimpleBundle WixToolsetTest.BurnE2E.dll | 20 | > dotnet test --filter WixToolsetTest.BurnE2E.BasicFunctionalityTests.CanInstallAndUninstallSimpleBundle_x86_wixstdba WixToolsetTest.BurnE2E.dll |
21 | 21 | ||
22 | The VM must have: | 22 | The VM must have: |
23 | 1. x64 .NET Core SDK of 5.0 or later (for the test runner) | 23 | 1. x64 .NET Core SDK of 5.0 or later (for the test runner) |
24 | 1. Any version of .NET Framework (for the .NET Framework TestBA) | 24 | 1. Any version of .NET Framework (for the .NET Framework TestBA) |
25 | 1. x86 .NET Core Desktop Runtime of 5.0 or later (for the .NET Core TestBA) | 25 | 1. x86 .NET Core Desktop Runtime of 5.0 or later (for the .NET Core TestBA) |
26 | 26 | ||
27 | ## Updating dependencies | ||
28 | |||
29 | Use the `updatepackage.ps1` script from https://github.com/wixtoolset/Home. | ||
30 | For example: | ||
31 | |||
32 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Bal.wixext -NewVersion 4.0.91 | ||
33 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Data -NewVersion 4.0.199 | ||
34 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Dependency.wixext -NewVersion 4.0.25 | ||
35 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Mba.Core -NewVersion 4.0.52 | ||
36 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.NetFx.wixext -NewVersion 4.0.67 | ||
37 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Util.wixext -NewVersion 4.0.82 | ||
38 | * updatepackage.ps1 -TargetFolder path\to\repo -PackageName WixToolset.Sdk -NewVersion 4.0.0-build-0204 | ||
39 | |||
40 | ## Building with local changes | 27 | ## Building with local changes |
41 | 28 | ||
42 | The micro repo model makes this very difficult and painful. | 29 | The current build process will poison your NuGet package cache, so you may have to run the following command to clear it: |
43 | The basic idea is to make your changes in each individual repo on the master branch (to get a stable version), commit, and then use appveyor.cmd to build the nuget package. | ||
44 | Put your custom nuget packages into a folder, and modify each repo's nuget.config with an entry to that folder. | ||
45 | |||
46 | Alternatively, go into the NuGet package cache (%USERPROFILE%\.nuget\packages) and replace the official binaries with your locally built binaries. | ||
47 | |||
48 | Both of those approaches will poison your NuGet package cache, so you probably will want to run the following command to clear it when you're done: | ||
49 | 30 | ||
50 | > nuget locals all -clear \ No newline at end of file | 31 | > nuget locals all -clear \ No newline at end of file |