From 0afd76e4c5d46f237591d860e7d445e267522187 Mon Sep 17 00:00:00 2001 From: Sean Hall Date: Mon, 30 Mar 2020 19:46:56 +1000 Subject: Add DetectSHA2Support "search". --- .../TestData/BundleWithSearches/Bundle.wxs | 5 ++ .../WixToolsetTest.Util/UtilExtensionFixture.cs | 55 ++++++++++------------ 2 files changed, 29 insertions(+), 31 deletions(-) (limited to 'src/test') diff --git a/src/test/WixToolsetTest.Util/TestData/BundleWithSearches/Bundle.wxs b/src/test/WixToolsetTest.Util/TestData/BundleWithSearches/Bundle.wxs index cafd4255..82646b37 100644 --- a/src/test/WixToolsetTest.Util/TestData/BundleWithSearches/Bundle.wxs +++ b/src/test/WixToolsetTest.Util/TestData/BundleWithSearches/Bundle.wxs @@ -7,6 +7,7 @@ + @@ -32,4 +33,8 @@ + + + + diff --git a/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs b/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs index 8f33eff5..c5b370ac 100644 --- a/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs +++ b/src/test/WixToolsetTest.Util/UtilExtensionFixture.cs @@ -146,6 +146,9 @@ namespace WixToolsetTest.Util { var baseFolder = fs.GetFolder(); var intermediateFolder = Path.Combine(baseFolder, "obj"); + var bundlePath = Path.Combine(baseFolder, @"bin\test.exe"); + var baFolderPath = Path.Combine(baseFolder, "ba"); + var extractFolderPath = Path.Combine(baseFolder, "extract"); var result = WixRunner.Execute(new[] { @@ -156,45 +159,35 @@ namespace WixToolsetTest.Util "-bindpath", Path.Combine(folder, "data"), "-intermediateFolder", intermediateFolder, "-burnStub", burnStubPath, - "-o", Path.Combine(baseFolder, @"bin\test.exe") + "-o", bundlePath }); result.AssertSuccess(); - Assert.True(File.Exists(Path.Combine(baseFolder, @"bin\test.exe"))); + Assert.True(File.Exists(bundlePath)); #if TODO Assert.True(File.Exists(Path.Combine(baseFolder, @"bin\test.wixpdb"))); #endif - var intermediate = Intermediate.Load(Path.Combine(intermediateFolder, @"test.wir")); - var section = intermediate.Sections.Single(); - - var searchTuples = section.Tuples.OfType().OrderBy(t => t.Id.Id).ToList(); - Assert.Equal(3, searchTuples.Count); - Assert.Equal("FileSearchId", searchTuples[0].Id.Id); - Assert.Equal("FileSearchVariable", searchTuples[0].Variable); - Assert.Equal("ProductSearchId", searchTuples[1].Id.Id); - Assert.Equal("ProductSearchVariable", searchTuples[1].Variable); - Assert.Equal("1 & 2 < 3", searchTuples[1].Condition); - Assert.Equal("RegistrySearchId", searchTuples[2].Id.Id); - Assert.Equal("RegistrySearchVariable", searchTuples[2].Variable); - - var fileSearchTuple = section.Tuples.OfType().Single(); - Assert.Equal("FileSearchId", fileSearchTuple.Id.Id); - Assert.Equal(@"%windir%\System32\mscoree.dll", fileSearchTuple.Path); - Assert.Equal(WixFileSearchAttributes.Default | WixFileSearchAttributes.WantExists, fileSearchTuple.Attributes); - - var productSearchTuple = section.Tuples.OfType().Single(); - Assert.Equal("ProductSearchId", productSearchTuple.Id.Id); - Assert.Equal("{738D02BF-E231-4370-8209-E9FD4E1BE2A1}", productSearchTuple.Guid); - Assert.Equal(WixProductSearchAttributes.Version | WixProductSearchAttributes.UpgradeCode, productSearchTuple.Attributes); - - var registrySearchTuple = section.Tuples.OfType().Single(); - Assert.Equal("RegistrySearchId", registrySearchTuple.Id.Id); - Assert.Equal(RegistryRootType.LocalMachine, registrySearchTuple.Root); - Assert.Equal(@"SOFTWARE\Microsoft\NET Framework Setup\NDP\v4\Full", registrySearchTuple.Key); - Assert.Equal("Release", registrySearchTuple.Value); - Assert.Equal(WixRegistrySearchAttributes.WantValue | WixRegistrySearchAttributes.Raw, registrySearchTuple.Attributes); + var extractResult = BundleExtractor.ExtractBAContainer(null, bundlePath, baFolderPath, extractFolderPath); + extractResult.AssertSuccess(); + + var bundleExtensionDatas = extractResult.SelectBundleExtensionDataNodes("/be:BundleExtensionData/be:BundleExtension[@Id='WixUtilBundleExtension']"); + Assert.Equal(1, bundleExtensionDatas.Count); + Assert.Equal("" + + "" + + "", bundleExtensionDatas[0].GetTestXml()); + + var utilSearches = extractResult.SelectManifestNodes("/burn:BurnManifest/*[self::burn:ExtensionSearch or self::burn:FileSearch or self::burn:MsiProductSearch or self::burn:RegistrySearch]"); + Assert.Equal(4, utilSearches.Count); + Assert.Equal("", utilSearches[0].GetTestXml()); + Assert.Equal("", utilSearches[1].GetTestXml()); + Assert.Equal("", utilSearches[2].GetTestXml()); + Assert.Equal("", utilSearches[3].GetTestXml()); } } -- cgit v1.2.3-55-g6feb