summaryrefslogtreecommitdiff
path: root/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
diff options
context:
space:
mode:
authorRob Mensching <rob@firegiant.com>2021-05-03 16:05:08 -0700
committerRob Mensching <rob@firegiant.com>2021-05-03 16:05:08 -0700
commit7bdd5e9159b298e0411afa689a06c44e36e293cd (patch)
tree57d24ea7fdd8025baf6a822a99b588c9df74a60d /src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
parentca02e81316d700a3647414f355eab4d2115d6163 (diff)
downloadwix-7bdd5e9159b298e0411afa689a06c44e36e293cd.tar.gz
wix-7bdd5e9159b298e0411afa689a06c44e36e293cd.tar.bz2
wix-7bdd5e9159b298e0411afa689a06c44e36e293cd.zip
Move NetFx.wixext into ext
Diffstat (limited to 'src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs')
-rw-r--r--src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs147
1 files changed, 147 insertions, 0 deletions
diff --git a/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
new file mode 100644
index 00000000..72d4a682
--- /dev/null
+++ b/src/ext/NetFx/test/WixToolsetTest.Netfx/NetfxExtensionFixture.cs
@@ -0,0 +1,147 @@
1// Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information.
2
3namespace WixToolsetTest.Netfx
4{
5 using System.IO;
6 using System.Linq;
7 using WixBuildTools.TestSupport;
8 using WixToolset.Core.TestPackage;
9 using WixToolset.Netfx;
10 using Xunit;
11
12 public class NetfxExtensionFixture
13 {
14 [Fact]
15 public void CanBuildUsingLatestDotNetCorePackages()
16 {
17 using (var fs = new DisposableFileSystem())
18 {
19 var baseFolder = fs.GetFolder();
20 var bundleFile = Path.Combine(baseFolder, "bin", "test.exe");
21 var bundleSourceFolder = TestData.Get(@"TestData\UsingDotNetCorePackages");
22 var intermediateFolder = Path.Combine(baseFolder, "obj");
23
24 var compileResult = WixRunner.Execute(new[]
25 {
26 "build",
27 Path.Combine(bundleSourceFolder, "BundleLatest.wxs"),
28 "-ext", TestData.Get(@"WixToolset.Bal.wixext.dll"),
29 "-ext", TestData.Get(@"WixToolset.Netfx.wixext.dll"),
30 "-intermediateFolder", intermediateFolder,
31 "-o", bundleFile,
32 });
33 compileResult.AssertSuccess();
34
35 Assert.True(File.Exists(bundleFile));
36 }
37 }
38
39 [Fact]
40 public void CanBuildUsingLatestDotNetCorePackages_X64()
41 {
42 using (var fs = new DisposableFileSystem())
43 {
44 var baseFolder = fs.GetFolder();
45 var bundleFile = Path.Combine(baseFolder, "bin", "test.exe");
46 var bundleSourceFolder = TestData.Get(@"TestData\UsingDotNetCorePackages");
47 var intermediateFolder = Path.Combine(baseFolder, "obj");
48
49 var compileResult = WixRunner.Execute(new[]
50 {
51 "build",
52 Path.Combine(bundleSourceFolder, "BundleLatest_x64.wxs"),
53 "-ext", TestData.Get(@"WixToolset.Bal.wixext.dll"),
54 "-ext", TestData.Get(@"WixToolset.Netfx.wixext.dll"),
55 "-intermediateFolder", intermediateFolder,
56 "-o", bundleFile,
57 });
58 compileResult.AssertSuccess();
59
60 Assert.True(File.Exists(bundleFile));
61 }
62 }
63
64 [Fact]
65 public void CanBuildUsingNativeImage()
66 {
67 var folder = TestData.Get(@"TestData\UsingNativeImage");
68 var build = new Builder(folder, typeof(NetfxExtensionFactory), new[] { folder });
69
70 var results = build.BuildAndQuery(Build, "Binary", "CustomAction", "Wix4NetFxNativeImage");
71 Assert.Equal(new[]
72 {
73 "Binary:Wix4NetFxCA_X86\t[Binary data]",
74 "CustomAction:Wix4NetFxExecuteNativeImageCommitInstall_X86\t3649\tWix4NetFxCA_X86\tExecNetFx\t",
75 "CustomAction:Wix4NetFxExecuteNativeImageCommitUninstall_X86\t3649\tWix4NetFxCA_X86\tExecNetFx\t",
76 "CustomAction:Wix4NetFxExecuteNativeImageInstall_X86\t3137\tWix4NetFxCA_X86\tExecNetFx\t",
77 "CustomAction:Wix4NetFxExecuteNativeImageUninstall_X86\t3137\tWix4NetFxCA_X86\tExecNetFx\t",
78 "CustomAction:Wix4NetFxScheduleNativeImage_X86\t1\tWix4NetFxCA_X86\tSchedNetFx\t",
79 "Wix4NetFxNativeImage:ExampleNgen\tfil6349_KNDJhqShNzVdHX3ihhvA6Y\t3\t8\t\t",
80 }, results.OrderBy(s => s).ToArray());
81 }
82
83 [Fact]
84 public void CanBuildUsingNativeImageX64()
85 {
86 var folder = TestData.Get(@"TestData\UsingNativeImage");
87 var build = new Builder(folder, typeof(NetfxExtensionFactory), new[] { folder });
88
89 var results = build.BuildAndQuery(BuildX64, "Binary", "CustomAction", "Wix4NetFxNativeImage");
90 Assert.Equal(new[]
91 {
92 "Binary:Wix4NetFxCA_X64\t[Binary data]",
93 "CustomAction:Wix4NetFxExecuteNativeImageCommitInstall_X64\t3649\tWix4NetFxCA_X64\tExecNetFx\t",
94 "CustomAction:Wix4NetFxExecuteNativeImageCommitUninstall_X64\t3649\tWix4NetFxCA_X64\tExecNetFx\t",
95 "CustomAction:Wix4NetFxExecuteNativeImageInstall_X64\t3137\tWix4NetFxCA_X64\tExecNetFx\t",
96 "CustomAction:Wix4NetFxExecuteNativeImageUninstall_X64\t3137\tWix4NetFxCA_X64\tExecNetFx\t",
97 "CustomAction:Wix4NetFxScheduleNativeImage_X64\t1\tWix4NetFxCA_X64\tSchedNetFx\t",
98 "Wix4NetFxNativeImage:ExampleNgen\tfil6349_KNDJhqShNzVdHX3ihhvA6Y\t3\t8\t\t",
99 }, results.OrderBy(s => s).ToArray());
100 }
101
102 [Fact]
103 public void CanBuildUsingNativeImageARM64()
104 {
105 var folder = TestData.Get(@"TestData\UsingNativeImage");
106 var build = new Builder(folder, typeof(NetfxExtensionFactory), new[] { folder });
107
108 var results = build.BuildAndQuery(BuildARM64, "Binary", "CustomAction", "Wix4NetFxNativeImage");
109 Assert.Equal(new[]
110 {
111 "Binary:Wix4NetFxCA_A64\t[Binary data]",
112 "CustomAction:Wix4NetFxExecuteNativeImageCommitInstall_A64\t3649\tWix4NetFxCA_A64\tExecNetFx\t",
113 "CustomAction:Wix4NetFxExecuteNativeImageCommitUninstall_A64\t3649\tWix4NetFxCA_A64\tExecNetFx\t",
114 "CustomAction:Wix4NetFxExecuteNativeImageInstall_A64\t3137\tWix4NetFxCA_A64\tExecNetFx\t",
115 "CustomAction:Wix4NetFxExecuteNativeImageUninstall_A64\t3137\tWix4NetFxCA_A64\tExecNetFx\t",
116 "CustomAction:Wix4NetFxScheduleNativeImage_A64\t1\tWix4NetFxCA_A64\tSchedNetFx\t",
117 "Wix4NetFxNativeImage:ExampleNgen\tfil6349_KNDJhqShNzVdHX3ihhvA6Y\t3\t8\t\t",
118 }, results.OrderBy(s => s).ToArray());
119 }
120
121 private static void Build(string[] args)
122 {
123 var result = WixRunner.Execute(args);
124 result.AssertSuccess();
125 }
126
127 private static void BuildX64(string[] args)
128 {
129 var newArgs = args.ToList();
130 newArgs.Add("-platform");
131 newArgs.Add("x64");
132
133 var result = WixRunner.Execute(newArgs.ToArray());
134 result.AssertSuccess();
135 }
136
137 private static void BuildARM64(string[] args)
138 {
139 var newArgs = args.ToList();
140 newArgs.Add("-platform");
141 newArgs.Add("arm64");
142
143 var result = WixRunner.Execute(newArgs.ToArray());
144 result.AssertSuccess();
145 }
146 }
147}