diff options
| author | Rob Mensching <rob@firegiant.com> | 2022-02-07 21:22:15 -0800 |
|---|---|---|
| committer | Rob Mensching <rob@firegiant.com> | 2022-02-08 09:42:04 -0800 |
| commit | 92476046d8739cfb1411b605e57636208ac5af3c (patch) | |
| tree | 32831427ee84f802f4793560d1228520c7ecf571 /src | |
| parent | 5dbe0436f2e40528d80d139197e05ca47b8f3627 (diff) | |
| download | wix-92476046d8739cfb1411b605e57636208ac5af3c.tar.gz wix-92476046d8739cfb1411b605e57636208ac5af3c.tar.bz2 wix-92476046d8739cfb1411b605e57636208ac5af3c.zip | |
Actually elevate warning messages to error when requested
Diffstat (limited to 'src')
| -rw-r--r-- | src/api/wix/WixToolset.Data/Message.cs | 8 | ||||
| -rw-r--r-- | src/wix/WixToolset.Core/ExtensibilityServices/Messaging.cs | 17 | ||||
| -rw-r--r-- | src/wix/test/WixToolsetTest.CoreIntegration/WarningFixture.cs | 2 |
3 files changed, 23 insertions, 4 deletions
diff --git a/src/api/wix/WixToolset.Data/Message.cs b/src/api/wix/WixToolset.Data/Message.cs index 85a402e5..ddcff23e 100644 --- a/src/api/wix/WixToolset.Data/Message.cs +++ b/src/api/wix/WixToolset.Data/Message.cs | |||
| @@ -82,6 +82,14 @@ namespace WixToolset.Data | |||
| 82 | /// <value>The arguments for the format string.</value> | 82 | /// <value>The arguments for the format string.</value> |
| 83 | public object[] MessageArgs { get; } | 83 | public object[] MessageArgs { get; } |
| 84 | 84 | ||
| 85 | /// <summary> | ||
| 86 | /// Changes the message into an error message. | ||
| 87 | /// </summary> | ||
| 88 | public void ElevateToError() | ||
| 89 | { | ||
| 90 | this.Level = MessageLevel.Error; | ||
| 91 | } | ||
| 92 | |||
| 85 | public override string ToString() | 93 | public override string ToString() |
| 86 | { | 94 | { |
| 87 | if (this.ResourceManager == null) | 95 | if (this.ResourceManager == null) |
diff --git a/src/wix/WixToolset.Core/ExtensibilityServices/Messaging.cs b/src/wix/WixToolset.Core/ExtensibilityServices/Messaging.cs index afcd9244..280d845c 100644 --- a/src/wix/WixToolset.Core/ExtensibilityServices/Messaging.cs +++ b/src/wix/WixToolset.Core/ExtensibilityServices/Messaging.cs | |||
| @@ -23,11 +23,20 @@ namespace WixToolset.Core.ExtensibilityServices | |||
| 23 | 23 | ||
| 24 | public bool WarningsAsError { get; set; } | 24 | public bool WarningsAsError { get; set; } |
| 25 | 25 | ||
| 26 | public void ElevateWarningMessage(int warningNumber) => this.warningsAsErrors.Add(warningNumber); | 26 | public void ElevateWarningMessage(int warningNumber) |
| 27 | { | ||
| 28 | this.warningsAsErrors.Add(warningNumber); | ||
| 29 | } | ||
| 27 | 30 | ||
| 28 | public void SetListener(IMessageListener listener) => this.listener = listener; | 31 | public void SetListener(IMessageListener listener) |
| 32 | { | ||
| 33 | this.listener = listener; | ||
| 34 | } | ||
| 29 | 35 | ||
| 30 | public void SuppressWarningMessage(int warningNumber) => this.suppressedWarnings.Add(warningNumber); | 36 | public void SuppressWarningMessage(int warningNumber) |
| 37 | { | ||
| 38 | this.suppressedWarnings.Add(warningNumber); | ||
| 39 | } | ||
| 31 | 40 | ||
| 32 | public void Write(Message message) | 41 | public void Write(Message message) |
| 33 | { | 42 | { |
| @@ -87,6 +96,8 @@ namespace WixToolset.Core.ExtensibilityServices | |||
| 87 | } | 96 | } |
| 88 | else if (this.WarningsAsError || this.warningsAsErrors.Contains(message.Id)) | 97 | else if (this.WarningsAsError || this.warningsAsErrors.Contains(message.Id)) |
| 89 | { | 98 | { |
| 99 | message.ElevateToError(); | ||
| 100 | |||
| 90 | level = MessageLevel.Error; | 101 | level = MessageLevel.Error; |
| 91 | } | 102 | } |
| 92 | } | 103 | } |
diff --git a/src/wix/test/WixToolsetTest.CoreIntegration/WarningFixture.cs b/src/wix/test/WixToolsetTest.CoreIntegration/WarningFixture.cs index c5b6c261..0d5b3b4b 100644 --- a/src/wix/test/WixToolsetTest.CoreIntegration/WarningFixture.cs +++ b/src/wix/test/WixToolsetTest.CoreIntegration/WarningFixture.cs | |||
| @@ -56,7 +56,7 @@ namespace WixToolsetTest.CoreIntegration | |||
| 56 | Assert.Equal((int)WarningMessages.Ids.PathCanonicalized, result.ExitCode); | 56 | Assert.Equal((int)WarningMessages.Ids.PathCanonicalized, result.ExitCode); |
| 57 | 57 | ||
| 58 | var message = Assert.Single(result.Messages); | 58 | var message = Assert.Single(result.Messages); |
| 59 | Assert.Equal(MessageLevel.Warning, message.Level); // TODO: is this right? | 59 | Assert.Equal(MessageLevel.Error, message.Level); |
| 60 | } | 60 | } |
| 61 | } | 61 | } |
| 62 | } | 62 | } |
