aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs46
1 files changed, 46 insertions, 0 deletions
diff --git a/src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs b/src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs
index 1e314281..30cbb18e 100644
--- a/src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs
+++ b/src/test/WixToolsetTest.CoreIntegration/BundleFixture.cs
@@ -133,6 +133,52 @@ namespace WixToolsetTest.CoreIntegration
133 } 133 }
134 134
135 [Fact] 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]
136 public void CanBuildSimpleBundleUsingExtensionBA() 182 public void CanBuildSimpleBundleUsingExtensionBA()
137 { 183 {
138 var extensionPath = Path.GetFullPath(new Uri(typeof(ExampleExtensionFactory).Assembly.CodeBase).LocalPath); 184 var extensionPath = Path.GetFullPath(new Uri(typeof(ExampleExtensionFactory).Assembly.CodeBase).LocalPath);