diff options
author | Bob Arnson <bob@firegiant.com> | 2022-12-12 21:12:51 -0500 |
---|---|---|
committer | Bob Arnson <github@bobs.org> | 2022-12-12 22:17:19 -0500 |
commit | c54f3083489827a1e57c6fd7f3d76f62ddc6e85e (patch) | |
tree | ae29b8417bb0bf1aae9739f6caa6451debf5d52b | |
parent | b91ef8598fd8b16329b39b449555b8d1c00a0d06 (diff) | |
download | wix-c54f3083489827a1e57c6fd7f3d76f62ddc6e85e.tar.gz wix-c54f3083489827a1e57c6fd7f3d76f62ddc6e85e.tar.bz2 wix-c54f3083489827a1e57c6fd7f3d76f62ddc6e85e.zip |
Add message for DoAction WixUI custom actions.
-rw-r--r-- | src/wix/WixToolset.Converters/WixConverter.cs | 10 | ||||
-rw-r--r-- | src/wix/test/WixToolsetTest.Converters/ConverterFixture.cs | 37 |
2 files changed, 47 insertions, 0 deletions
diff --git a/src/wix/WixToolset.Converters/WixConverter.cs b/src/wix/WixToolset.Converters/WixConverter.cs index 61bd0f79..9359d0d2 100644 --- a/src/wix/WixToolset.Converters/WixConverter.cs +++ b/src/wix/WixToolset.Converters/WixConverter.cs | |||
@@ -1676,6 +1676,16 @@ namespace WixToolset.Converters | |||
1676 | lab.AddCommentsAsSiblings(comments); | 1676 | lab.AddCommentsAsSiblings(comments); |
1677 | } | 1677 | } |
1678 | } | 1678 | } |
1679 | |||
1680 | var evnt = element.Attribute("Event")?.Value; | ||
1681 | var value = element.Attribute("Value")?.Value; | ||
1682 | |||
1683 | if (evnt?.Equals("DoAction", StringComparison.OrdinalIgnoreCase) == true | ||
1684 | && value?.StartsWith("WixUI", StringComparison.OrdinalIgnoreCase) == true | ||
1685 | && this.OnInformation(ConverterTestType.CustomActionIdsIncludePlatformSuffix, element, "Custom action ids have changed in WiX v4 extensions to support platform-specific custom actions. For more information, see https://wixtoolset.org/docs/fourthree/#converting-custom-wixui-dialog-sets.")) | ||
1686 | { | ||
1687 | // Just warn. | ||
1688 | } | ||
1679 | } | 1689 | } |
1680 | 1690 | ||
1681 | private void ConvertMultiStringValueElement(XElement element) | 1691 | private void ConvertMultiStringValueElement(XElement element) |
diff --git a/src/wix/test/WixToolsetTest.Converters/ConverterFixture.cs b/src/wix/test/WixToolsetTest.Converters/ConverterFixture.cs index b88d89d1..7aa1c959 100644 --- a/src/wix/test/WixToolsetTest.Converters/ConverterFixture.cs +++ b/src/wix/test/WixToolsetTest.Converters/ConverterFixture.cs | |||
@@ -542,5 +542,42 @@ namespace WixToolsetTest.Converters | |||
542 | Assert.Equal(2, errors); | 542 | Assert.Equal(2, errors); |
543 | WixAssert.CompareLineByLine(expected, actual); | 543 | WixAssert.CompareLineByLine(expected, actual); |
544 | } | 544 | } |
545 | |||
546 | [Fact] | ||
547 | public void WarnsOnWixUIDoActionControlEvents() | ||
548 | { | ||
549 | var parse = String.Join(Environment.NewLine, | ||
550 | "<Wix xmlns='http://schemas.microsoft.com/wix/2006/wi'>", | ||
551 | " <Fragment>", | ||
552 | " <UI Id='WixUI_Test'>", | ||
553 | " <Publish Dialog='BrowseDlg' Control='OK' Event='DoAction' Value='WixUIValidatePath' Order='3' />", | ||
554 | " </UI>", | ||
555 | " </Fragment>", | ||
556 | "</Wix>"); | ||
557 | |||
558 | var expected = new[] | ||
559 | { | ||
560 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
561 | " <Fragment>", | ||
562 | " <UI Id=\"WixUI_Test\">", | ||
563 | " <Publish Dialog=\"BrowseDlg\" Control=\"OK\" Event=\"DoAction\" Value=\"WixUIValidatePath\" Order=\"3\" />", | ||
564 | " </UI>", | ||
565 | " </Fragment>", | ||
566 | "</Wix>", | ||
567 | }; | ||
568 | |||
569 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
570 | |||
571 | var messaging = new MockMessaging(); | ||
572 | var converter = new WixConverter(messaging, 2, null, null); | ||
573 | |||
574 | var errors = converter.ConvertDocument(document); | ||
575 | |||
576 | var actual = UnformattedDocumentLines(document); | ||
577 | |||
578 | Assert.Equal(2, errors); | ||
579 | Assert.Single(messaging.Messages.Where(m => m.Id == 65)); | ||
580 | WixAssert.CompareLineByLine(expected, actual); | ||
581 | } | ||
545 | } | 582 | } |
546 | } | 583 | } |