@joebigelow / wix / commits / 2fccb302

Add test for building x64 bundle.

Bob Arnson committed Jan 3, 2021 at 16:36 UTC 2fccb302778f71cffb4791131bedf1bf7267b94e
1 file changed +46
src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs
+46
@@ -132,6 +132,52 @@ namespace WixToolsetTest.CoreIntegration
132 }
133 }
134
135 + [Fact]
136 + public void CanBuildX64Bundle()
137 + {
138 + var folder = TestData.Get(@"TestData\SimpleBundle");
139 +
140 + using (var fs = new DisposableFileSystem())
141 + {
142 + var baseFolder = fs.GetFolder();
143 + var intermediateFolder = Path.Combine(baseFolder, "obj");
144 + var exePath = Path.Combine(baseFolder, @"bin\test.exe");
145 + var pdbPath = Path.Combine(baseFolder, @"bin\test.wixpdb");
146 + var baFolderPath = Path.Combine(baseFolder, "ba");
147 + var extractFolderPath = Path.Combine(baseFolder, "extract");
148 +
149 + var result = WixRunner.Execute(new[]
150 + {
151 + "build",
152 + "-arch", "x64",
153 + Path.Combine(folder, "Bundle.wxs"),
154 + "-loc", Path.Combine(folder, "Bundle.en-us.wxl"),
155 + "-bindpath", Path.Combine(folder, "data"),
156 + "-intermediateFolder", intermediateFolder,
157 + "-o", exePath,
158 + });
159 +
160 + result.AssertSuccess();
161 + Assert.Empty(result.Messages.Where(m => m.Level == MessageLevel.Warning));
162 +
163 + Assert.True(File.Exists(exePath));
164 + Assert.True(File.Exists(pdbPath));
165 +
166 + var manifestResource = new Resource(ResourceType.Manifest, "#1", 1033);
167 + manifestResource.Load(exePath);
168 + var actualManifestData = Encoding.UTF8.GetString(manifestResource.Data);
169 + Assert.Equal("<?xml version=\"1.0\" encoding=\"utf-8\"?>" +
170 + "<assembly manifestVersion=\"1.0\" xmlns=\"urn:schemas-microsoft-com:asm.v1\">" +
171 + "<assemblyIdentity name=\"test.exe\" version=\"1.0.0.0\" processorArchitecture=\"amd64\" type=\"win32\" />" +
172 + "<description>~TestBundle</description>" +
173 + "<dependency><dependentAssembly><assemblyIdentity name=\"Microsoft.Windows.Common-Controls\" version=\"6.0.0.0\" processorArchitecture=\"amd64\" publicKeyToken=\"6595b64144ccf1df\" language=\"*\" type=\"win32\" /></dependentAssembly></dependency>" +
174 + "<compatibility xmlns=\"urn:schemas-microsoft-com:compatibility.v1\"><application><supportedOS Id=\"{e2011457-1546-43c5-a5fe-008deee3d3f0}\" /><supportedOS Id=\"{35138b9a-5d96-4fbd-8e2d-a2440225f93a}\" /><supportedOS Id=\"{4a2f28e3-53b9-4441-ba9c-d69d4a4a6e38}\" /><supportedOS Id=\"{1f676c76-80e1-4239-95bb-83d0f6d0da78}\" /><supportedOS Id=\"{8e0f7a12-bfb3-4fe8-b9a5-48fd50a15a9a}\" /></application></compatibility>" +
175 + "<trustInfo xmlns=\"urn:schemas-microsoft-com:asm.v3\"><security><requestedPrivileges><requestedExecutionLevel level=\"asInvoker\" uiAccess=\"false\" /></requestedPrivileges></security></trustInfo>" +
176 + "<application xmlns=\"urn:schemas-microsoft-com:asm.v3\"><windowsSettings><dpiAware xmlns=\"http://schemas.microsoft.com/SMI/2005/WindowsSettings\">true/pm</dpiAware><dpiAwareness xmlns=\"http://schemas.microsoft.com/SMI/2016/WindowsSettings\">PerMonitorV2, PerMonitor</dpiAwareness></windowsSettings></application>" +
177 + "</assembly>", actualManifestData);
178 + }
179 + }
180 +
181 [Fact]
182 public void CanBuildSimpleBundleUsingExtensionBA()
183 {