diff options
| author | Bob Arnson <bob@firegiant.com> | 2019-04-02 19:23:16 -0400 |
|---|---|---|
| committer | Bob Arnson <bob@firegiant.com> | 2019-04-02 19:35:51 -0400 |
| commit | d1dbe29f3856d012acf5f96e8e66c43b74ab490d (patch) | |
| tree | f7ee5cb481010968524bb97a6184511c0152b8db /src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs | |
| parent | 42727c42248d1cb12ef8d9bc6f8ce7dda3f404c9 (diff) | |
| download | wix-d1dbe29f3856d012acf5f96e8e66c43b74ab490d.tar.gz wix-d1dbe29f3856d012acf5f96e8e66c43b74ab490d.tar.bz2 wix-d1dbe29f3856d012acf5f96e8e66c43b74ab490d.zip | |
Add failing test to demonstrate ProgId bug.
When a parent ProgId has Advertise="yes" and a child ProgId omits Advertise, the compiler assumes it's a non-advertised ProgId. It should be advertised instead.
Diffstat (limited to 'src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs')
| -rw-r--r-- | src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs | 39 |
1 files changed, 39 insertions, 0 deletions
diff --git a/src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs b/src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs index b5e1ec3d..c70d276d 100644 --- a/src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs +++ b/src/test/WixToolsetTest.CoreIntegration/MsiFixture.cs | |||
| @@ -539,6 +539,45 @@ namespace WixToolsetTest.CoreIntegration | |||
| 539 | } | 539 | } |
| 540 | } | 540 | } |
| 541 | 541 | ||
| 542 | [Fact] | ||
| 543 | public void CanBuildVersionIndependentProgId() | ||
| 544 | { | ||
| 545 | var folder = TestData.Get(@"TestData\ProgId"); | ||
| 546 | |||
| 547 | using (var fs = new DisposableFileSystem()) | ||
| 548 | { | ||
| 549 | var baseFolder = fs.GetFolder(); | ||
| 550 | var intermediateFolder = Path.Combine(baseFolder, "obj"); | ||
| 551 | |||
| 552 | var result = WixRunner.Execute(new[] | ||
| 553 | { | ||
| 554 | "build", | ||
| 555 | Path.Combine(folder, "Package.wxs"), | ||
| 556 | Path.Combine(folder, "PackageComponents.wxs"), | ||
| 557 | "-loc", Path.Combine(folder, "Package.en-us.wxl"), | ||
| 558 | "-bindpath", Path.Combine(folder, "data"), | ||
| 559 | "-intermediateFolder", intermediateFolder, | ||
| 560 | "-o", Path.Combine(baseFolder, @"bin\test.msi") | ||
| 561 | }); | ||
| 562 | |||
| 563 | result.AssertSuccess(); | ||
| 564 | |||
| 565 | Assert.True(File.Exists(Path.Combine(baseFolder, @"bin\test.msi"))); | ||
| 566 | Assert.True(File.Exists(Path.Combine(baseFolder, @"bin\test.wixpdb"))); | ||
| 567 | Assert.True(File.Exists(Path.Combine(baseFolder, @"bin\MsiPackage\Foo.exe"))); | ||
| 568 | |||
| 569 | var intermediate = Intermediate.Load(Path.Combine(intermediateFolder, @"test.wir")); | ||
| 570 | var section = intermediate.Sections.Single(); | ||
| 571 | |||
| 572 | var progids = section.Tuples.OfType<ProgIdTuple>().OrderBy(tuple => tuple.ProgId).ToList(); | ||
| 573 | Assert.Equal(2, progids.Count); | ||
| 574 | Assert.Equal("Foo.File.hol", progids[0].ProgId); | ||
| 575 | Assert.Equal("Foo.File.hol.15", progids[0].ProgId_Parent); | ||
| 576 | Assert.Equal("Foo.File.hol.15", progids[1].ProgId); | ||
| 577 | Assert.Null(progids[1].ProgId_Parent); | ||
| 578 | } | ||
| 579 | } | ||
| 580 | |||
| 542 | [Fact(Skip = "Not implemented yet.")] | 581 | [Fact(Skip = "Not implemented yet.")] |
| 543 | public void CanBuildInstanceTransform() | 582 | public void CanBuildInstanceTransform() |
| 544 | { | 583 | { |
