diff options
| author | Sean Hall <r.sean.hall@gmail.com> | 2022-05-16 16:07:43 -0500 |
|---|---|---|
| committer | Sean Hall <r.sean.hall@gmail.com> | 2022-05-17 22:54:13 -0500 |
| commit | 46fb0597d4d6192833ddcf836f4bcf6295ef0aaf (patch) | |
| tree | bfe188365bb37b298c42238d39568ebfc8809dcb /src/api | |
| parent | 0ea53e27361cbfe664df98d717e55005f329aff1 (diff) | |
| download | wix-46fb0597d4d6192833ddcf836f4bcf6295ef0aaf.tar.gz wix-46fb0597d4d6192833ddcf836f4bcf6295ef0aaf.tar.bz2 wix-46fb0597d4d6192833ddcf836f4bcf6295ef0aaf.zip | |
Keep track of when parts of verutil/WixVersions are missing.
Return null when WixVersion.TryParse returns false.
6776
Diffstat (limited to 'src/api')
| -rw-r--r-- | src/api/burn/WixToolset.Mba.Core/VerUtil.cs | 4 | ||||
| -rw-r--r-- | src/api/burn/WixToolset.Mba.Core/VerUtilVersion.cs | 24 | ||||
| -rw-r--r-- | src/api/burn/test/WixToolsetTest.Mba.Core/VerUtilFixture.cs | 8 | ||||
| -rw-r--r-- | src/api/wix/WixToolset.Data/WixVersion.cs | 33 | ||||
| -rw-r--r-- | src/api/wix/test/WixToolsetTest.Data/WixVerFixture.cs | 80 |
5 files changed, 132 insertions, 17 deletions
diff --git a/src/api/burn/WixToolset.Mba.Core/VerUtil.cs b/src/api/burn/WixToolset.Mba.Core/VerUtil.cs index 611f9710..14552310 100644 --- a/src/api/burn/WixToolset.Mba.Core/VerUtil.cs +++ b/src/api/burn/WixToolset.Mba.Core/VerUtil.cs | |||
| @@ -68,6 +68,10 @@ namespace WixToolset.Mba.Core | |||
| 68 | public IntPtr rgReleaseLabels; | 68 | public IntPtr rgReleaseLabels; |
| 69 | public IntPtr cchMetadataOffset; | 69 | public IntPtr cchMetadataOffset; |
| 70 | public bool fInvalid; | 70 | public bool fInvalid; |
| 71 | public bool fHasMajor; | ||
| 72 | public bool fHasMinor; | ||
| 73 | public bool fHasPatch; | ||
| 74 | public bool fHasRevision; | ||
| 71 | } | 75 | } |
| 72 | 76 | ||
| 73 | internal static string VersionStringFromOffset(IntPtr wzVersion, IntPtr cchOffset, int? cchLength = null) | 77 | internal static string VersionStringFromOffset(IntPtr wzVersion, IntPtr cchOffset, int? cchLength = null) |
diff --git a/src/api/burn/WixToolset.Mba.Core/VerUtilVersion.cs b/src/api/burn/WixToolset.Mba.Core/VerUtilVersion.cs index 731dedaf..e0312474 100644 --- a/src/api/burn/WixToolset.Mba.Core/VerUtilVersion.cs +++ b/src/api/burn/WixToolset.Mba.Core/VerUtilVersion.cs | |||
| @@ -25,6 +25,10 @@ namespace WixToolset.Mba.Core | |||
| 25 | this.ReleaseLabels = new VerUtilVersionReleaseLabel[version.cReleaseLabels]; | 25 | this.ReleaseLabels = new VerUtilVersionReleaseLabel[version.cReleaseLabels]; |
| 26 | this.Metadata = VerUtil.VersionStringFromOffset(version.sczVersion, version.cchMetadataOffset); | 26 | this.Metadata = VerUtil.VersionStringFromOffset(version.sczVersion, version.cchMetadataOffset); |
| 27 | this.IsInvalid = version.fInvalid; | 27 | this.IsInvalid = version.fInvalid; |
| 28 | this.HasMajor = version.fHasMajor; | ||
| 29 | this.HasMinor = version.fHasMinor; | ||
| 30 | this.HasPatch = version.fHasPatch; | ||
| 31 | this.HasRevision = version.fHasRevision; | ||
| 28 | 32 | ||
| 29 | for (var i = 0; i < version.cReleaseLabels; ++i) | 33 | for (var i = 0; i < version.cReleaseLabels; ++i) |
| 30 | { | 34 | { |
| @@ -80,6 +84,26 @@ namespace WixToolset.Mba.Core | |||
| 80 | /// </summary> | 84 | /// </summary> |
| 81 | public bool IsInvalid { get; private set; } | 85 | public bool IsInvalid { get; private set; } |
| 82 | 86 | ||
| 87 | /// <summary> | ||
| 88 | /// Whether the Major part was specified. | ||
| 89 | /// </summary> | ||
| 90 | public bool HasMajor { get; private set; } | ||
| 91 | |||
| 92 | /// <summary> | ||
| 93 | /// Whether the Minor part was specified. | ||
| 94 | /// </summary> | ||
| 95 | public bool HasMinor { get; private set; } | ||
| 96 | |||
| 97 | /// <summary> | ||
| 98 | /// Whether the Patch part was specified. | ||
| 99 | /// </summary> | ||
| 100 | public bool HasPatch { get; private set; } | ||
| 101 | |||
| 102 | /// <summary> | ||
| 103 | /// Whether the Revision part was specified. | ||
| 104 | /// </summary> | ||
| 105 | public bool HasRevision { get; private set; } | ||
| 106 | |||
| 83 | /// <inheritdoc/> | 107 | /// <inheritdoc/> |
| 84 | public void Dispose() | 108 | public void Dispose() |
| 85 | { | 109 | { |
diff --git a/src/api/burn/test/WixToolsetTest.Mba.Core/VerUtilFixture.cs b/src/api/burn/test/WixToolsetTest.Mba.Core/VerUtilFixture.cs index ceb1b12a..6fb8aced 100644 --- a/src/api/burn/test/WixToolsetTest.Mba.Core/VerUtilFixture.cs +++ b/src/api/burn/test/WixToolsetTest.Mba.Core/VerUtilFixture.cs | |||
| @@ -57,6 +57,10 @@ namespace WixToolsetTest.Mba.Core | |||
| 57 | Assert.Empty(parsedVersion.ReleaseLabels); | 57 | Assert.Empty(parsedVersion.ReleaseLabels); |
| 58 | Assert.Equal("", parsedVersion.Metadata); | 58 | Assert.Equal("", parsedVersion.Metadata); |
| 59 | Assert.False(parsedVersion.IsInvalid); | 59 | Assert.False(parsedVersion.IsInvalid); |
| 60 | Assert.True(parsedVersion.HasMajor); | ||
| 61 | Assert.True(parsedVersion.HasMinor); | ||
| 62 | Assert.True(parsedVersion.HasPatch); | ||
| 63 | Assert.True(parsedVersion.HasRevision); | ||
| 60 | } | 64 | } |
| 61 | 65 | ||
| 62 | [Fact] | 66 | [Fact] |
| @@ -74,6 +78,10 @@ namespace WixToolsetTest.Mba.Core | |||
| 74 | Assert.Equal(5, parsedVersion.ReleaseLabels.Length); | 78 | Assert.Equal(5, parsedVersion.ReleaseLabels.Length); |
| 75 | Assert.Equal("+abc123", parsedVersion.Metadata); | 79 | Assert.Equal("+abc123", parsedVersion.Metadata); |
| 76 | Assert.True(parsedVersion.IsInvalid); | 80 | Assert.True(parsedVersion.IsInvalid); |
| 81 | Assert.True(parsedVersion.HasMajor); | ||
| 82 | Assert.True(parsedVersion.HasMinor); | ||
| 83 | Assert.True(parsedVersion.HasPatch); | ||
| 84 | Assert.True(parsedVersion.HasRevision); | ||
| 77 | 85 | ||
| 78 | Assert.Equal("a", parsedVersion.ReleaseLabels[0].Label); | 86 | Assert.Equal("a", parsedVersion.ReleaseLabels[0].Label); |
| 79 | Assert.False(parsedVersion.ReleaseLabels[0].IsNumeric); | 87 | Assert.False(parsedVersion.ReleaseLabels[0].IsNumeric); |
diff --git a/src/api/wix/WixToolset.Data/WixVersion.cs b/src/api/wix/WixToolset.Data/WixVersion.cs index 2b02bd7d..ab68b55a 100644 --- a/src/api/wix/WixToolset.Data/WixVersion.cs +++ b/src/api/wix/WixToolset.Data/WixVersion.cs | |||
| @@ -22,22 +22,42 @@ namespace WixToolset.Data | |||
| 22 | /// <summary> | 22 | /// <summary> |
| 23 | /// Gets or sets the major version. | 23 | /// Gets or sets the major version. |
| 24 | /// </summary> | 24 | /// </summary> |
| 25 | public uint? Major { get; set; } | 25 | public uint Major { get; set; } |
| 26 | 26 | ||
| 27 | /// <summary> | 27 | /// <summary> |
| 28 | /// Gets or sets the minor version. | 28 | /// Gets or sets the minor version. |
| 29 | /// </summary> | 29 | /// </summary> |
| 30 | public uint? Minor { get; set; } | 30 | public uint Minor { get; set; } |
| 31 | 31 | ||
| 32 | /// <summary> | 32 | /// <summary> |
| 33 | /// Gets or sets the patch version. | 33 | /// Gets or sets the patch version. |
| 34 | /// </summary> | 34 | /// </summary> |
| 35 | public uint? Patch { get; set; } | 35 | public uint Patch { get; set; } |
| 36 | 36 | ||
| 37 | /// <summary> | 37 | /// <summary> |
| 38 | /// Gets or sets the revision version. | 38 | /// Gets or sets the revision version. |
| 39 | /// </summary> | 39 | /// </summary> |
| 40 | public uint? Revision { get; set; } | 40 | public uint Revision { get; set; } |
| 41 | |||
| 42 | /// <summary> | ||
| 43 | /// Gets or sets whether the major version was defined. | ||
| 44 | /// </summary> | ||
| 45 | public bool HasMajor { get; set; } | ||
| 46 | |||
| 47 | /// <summary> | ||
| 48 | /// Gets or sets the whether the minor version was defined. | ||
| 49 | /// </summary> | ||
| 50 | public bool HasMinor { get; set; } | ||
| 51 | |||
| 52 | /// <summary> | ||
| 53 | /// Gets or sets the whether the patch version was defined. | ||
| 54 | /// </summary> | ||
| 55 | public bool HasPatch { get; set; } | ||
| 56 | |||
| 57 | /// <summary> | ||
| 58 | /// Gets or sets the whether the revision version was defined. | ||
| 59 | /// </summary> | ||
| 60 | public bool HasRevision { get; set; } | ||
| 41 | 61 | ||
| 42 | /// <summary> | 62 | /// <summary> |
| 43 | /// Gets or sets the labels in the version. | 63 | /// Gets or sets the labels in the version. |
| @@ -143,15 +163,19 @@ namespace WixToolset.Data | |||
| 143 | { | 163 | { |
| 144 | case 0: | 164 | case 0: |
| 145 | version.Major = part; | 165 | version.Major = part; |
| 166 | version.HasMajor = true; | ||
| 146 | break; | 167 | break; |
| 147 | case 1: | 168 | case 1: |
| 148 | version.Minor = part; | 169 | version.Minor = part; |
| 170 | version.HasMinor = true; | ||
| 149 | break; | 171 | break; |
| 150 | case 2: | 172 | case 2: |
| 151 | version.Patch = part; | 173 | version.Patch = part; |
| 174 | version.HasPatch = true; | ||
| 152 | break; | 175 | break; |
| 153 | case 3: | 176 | case 3: |
| 154 | version.Revision = part; | 177 | version.Revision = part; |
| 178 | version.HasRevision = true; | ||
| 155 | break; | 179 | break; |
| 156 | } | 180 | } |
| 157 | 181 | ||
| @@ -264,6 +288,7 @@ namespace WixToolset.Data | |||
| 264 | 288 | ||
| 265 | if (invalid) | 289 | if (invalid) |
| 266 | { | 290 | { |
| 291 | version = null; | ||
| 267 | return false; | 292 | return false; |
| 268 | } | 293 | } |
| 269 | 294 | ||
diff --git a/src/api/wix/test/WixToolsetTest.Data/WixVerFixture.cs b/src/api/wix/test/WixToolsetTest.Data/WixVerFixture.cs index 45253460..ffa3213a 100644 --- a/src/api/wix/test/WixToolsetTest.Data/WixVerFixture.cs +++ b/src/api/wix/test/WixToolsetTest.Data/WixVerFixture.cs | |||
| @@ -11,13 +11,15 @@ namespace WixToolsetTest.Data | |||
| 11 | [Fact] | 11 | [Fact] |
| 12 | public void CannotParseEmptyStringAsVersion() | 12 | public void CannotParseEmptyStringAsVersion() |
| 13 | { | 13 | { |
| 14 | Assert.False(WixVersion.TryParse(String.Empty, out var _)); | 14 | Assert.False(WixVersion.TryParse(String.Empty, out var version)); |
| 15 | Assert.Null(version); | ||
| 15 | } | 16 | } |
| 16 | 17 | ||
| 17 | [Fact] | 18 | [Fact] |
| 18 | public void CannotParseInvalidStringAsVersion() | 19 | public void CannotParseInvalidStringAsVersion() |
| 19 | { | 20 | { |
| 20 | Assert.False(WixVersion.TryParse("invalid", out var _)); | 21 | Assert.False(WixVersion.TryParse("invalid", out var version)); |
| 22 | Assert.Null(version); | ||
| 21 | } | 23 | } |
| 22 | 24 | ||
| 23 | [Fact] | 25 | [Fact] |
| @@ -29,6 +31,10 @@ namespace WixToolsetTest.Data | |||
| 29 | Assert.Equal((uint)2, version.Minor); | 31 | Assert.Equal((uint)2, version.Minor); |
| 30 | Assert.Equal((uint)3, version.Patch); | 32 | Assert.Equal((uint)3, version.Patch); |
| 31 | Assert.Equal((uint)4, version.Revision); | 33 | Assert.Equal((uint)4, version.Revision); |
| 34 | Assert.True(version.HasMajor); | ||
| 35 | Assert.True(version.HasMinor); | ||
| 36 | Assert.True(version.HasPatch); | ||
| 37 | Assert.True(version.HasRevision); | ||
| 32 | Assert.Null(version.Labels); | 38 | Assert.Null(version.Labels); |
| 33 | Assert.Null(version.Metadata); | 39 | Assert.Null(version.Metadata); |
| 34 | } | 40 | } |
| @@ -41,7 +47,11 @@ namespace WixToolsetTest.Data | |||
| 41 | Assert.Equal((uint)1, version.Major); | 47 | Assert.Equal((uint)1, version.Major); |
| 42 | Assert.Equal((uint)2, version.Minor); | 48 | Assert.Equal((uint)2, version.Minor); |
| 43 | Assert.Equal((uint)3, version.Patch); | 49 | Assert.Equal((uint)3, version.Patch); |
| 44 | Assert.Null(version.Revision); | 50 | Assert.Equal((uint)0, version.Revision); |
| 51 | Assert.True(version.HasMajor); | ||
| 52 | Assert.True(version.HasMinor); | ||
| 53 | Assert.True(version.HasPatch); | ||
| 54 | Assert.False(version.HasRevision); | ||
| 45 | Assert.Null(version.Labels); | 55 | Assert.Null(version.Labels); |
| 46 | Assert.Null(version.Metadata); | 56 | Assert.Null(version.Metadata); |
| 47 | } | 57 | } |
| @@ -55,6 +65,10 @@ namespace WixToolsetTest.Data | |||
| 55 | Assert.Equal((uint)2, version.Minor); | 65 | Assert.Equal((uint)2, version.Minor); |
| 56 | Assert.Equal((uint)3, version.Patch); | 66 | Assert.Equal((uint)3, version.Patch); |
| 57 | Assert.Equal((uint)0, version.Revision); | 67 | Assert.Equal((uint)0, version.Revision); |
| 68 | Assert.True(version.HasMajor); | ||
| 69 | Assert.True(version.HasMinor); | ||
| 70 | Assert.True(version.HasPatch); | ||
| 71 | Assert.True(version.HasRevision); | ||
| 58 | Assert.Null(version.Labels); | 72 | Assert.Null(version.Labels); |
| 59 | Assert.Null(version.Metadata); | 73 | Assert.Null(version.Metadata); |
| 60 | } | 74 | } |
| @@ -66,8 +80,12 @@ namespace WixToolsetTest.Data | |||
| 66 | Assert.Null(version.Prefix); | 80 | Assert.Null(version.Prefix); |
| 67 | Assert.Equal((uint)1, version.Major); | 81 | Assert.Equal((uint)1, version.Major); |
| 68 | Assert.Equal((uint)2, version.Minor); | 82 | Assert.Equal((uint)2, version.Minor); |
| 69 | Assert.Null(version.Patch); | 83 | Assert.Equal((uint)0, version.Patch); |
| 70 | Assert.Null(version.Revision); | 84 | Assert.Equal((uint)0, version.Revision); |
| 85 | Assert.True(version.HasMajor); | ||
| 86 | Assert.True(version.HasMinor); | ||
| 87 | Assert.False(version.HasPatch); | ||
| 88 | Assert.False(version.HasRevision); | ||
| 71 | Assert.Equal("19", version.Labels[0].Label); | 89 | Assert.Equal("19", version.Labels[0].Label); |
| 72 | Assert.Equal((uint)19, version.Labels[0].Numeric); | 90 | Assert.Equal((uint)19, version.Labels[0].Numeric); |
| 73 | Assert.Null(version.Metadata); | 91 | Assert.Null(version.Metadata); |
| @@ -80,8 +98,12 @@ namespace WixToolsetTest.Data | |||
| 80 | Assert.Null(version.Prefix); | 98 | Assert.Null(version.Prefix); |
| 81 | Assert.Equal((uint)1, version.Major); | 99 | Assert.Equal((uint)1, version.Major); |
| 82 | Assert.Equal((uint)2, version.Minor); | 100 | Assert.Equal((uint)2, version.Minor); |
| 83 | Assert.Null(version.Patch); | 101 | Assert.Equal((uint)0, version.Patch); |
| 84 | Assert.Null(version.Revision); | 102 | Assert.Equal((uint)0, version.Revision); |
| 103 | Assert.True(version.HasMajor); | ||
| 104 | Assert.True(version.HasMinor); | ||
| 105 | Assert.False(version.HasPatch); | ||
| 106 | Assert.False(version.HasRevision); | ||
| 85 | Assert.Equal("2", version.Labels[0].Label); | 107 | Assert.Equal("2", version.Labels[0].Label); |
| 86 | Assert.Equal((uint)2, version.Labels[0].Numeric); | 108 | Assert.Equal((uint)2, version.Labels[0].Numeric); |
| 87 | Assert.Equal("0", version.Labels[1].Label); | 109 | Assert.Equal("0", version.Labels[1].Label); |
| @@ -97,6 +119,11 @@ namespace WixToolsetTest.Data | |||
| 97 | Assert.Equal((uint)0, version.Major); | 119 | Assert.Equal((uint)0, version.Major); |
| 98 | Assert.Equal((uint)0, version.Minor); | 120 | Assert.Equal((uint)0, version.Minor); |
| 99 | Assert.Equal((uint)1, version.Patch); | 121 | Assert.Equal((uint)1, version.Patch); |
| 122 | Assert.Equal((uint)0, version.Revision); | ||
| 123 | Assert.True(version.HasMajor); | ||
| 124 | Assert.True(version.HasMinor); | ||
| 125 | Assert.True(version.HasPatch); | ||
| 126 | Assert.False(version.HasRevision); | ||
| 100 | Assert.Equal("a", version.Labels[0].Label); | 127 | Assert.Equal("a", version.Labels[0].Label); |
| 101 | Assert.Null(version.Labels[0].Numeric); | 128 | Assert.Null(version.Labels[0].Numeric); |
| 102 | Assert.Null(version.Metadata); | 129 | Assert.Null(version.Metadata); |
| @@ -109,8 +136,12 @@ namespace WixToolsetTest.Data | |||
| 109 | Assert.Null(version.Prefix); | 136 | Assert.Null(version.Prefix); |
| 110 | Assert.Equal((uint)0, version.Major); | 137 | Assert.Equal((uint)0, version.Major); |
| 111 | Assert.Equal((uint)1, version.Minor); | 138 | Assert.Equal((uint)1, version.Minor); |
| 112 | Assert.Null(version.Patch); | 139 | Assert.Equal((uint)0, version.Patch); |
| 113 | Assert.Null(version.Revision); | 140 | Assert.Equal((uint)0, version.Revision); |
| 141 | Assert.True(version.HasMajor); | ||
| 142 | Assert.True(version.HasMinor); | ||
| 143 | Assert.False(version.HasPatch); | ||
| 144 | Assert.False(version.HasRevision); | ||
| 114 | Assert.Equal("a", version.Labels[0].Label); | 145 | Assert.Equal("a", version.Labels[0].Label); |
| 115 | Assert.Null(version.Labels[0].Numeric); | 146 | Assert.Null(version.Labels[0].Numeric); |
| 116 | Assert.Equal("000", version.Labels[1].Label); | 147 | Assert.Equal("000", version.Labels[1].Label); |
| @@ -126,7 +157,11 @@ namespace WixToolsetTest.Data | |||
| 126 | Assert.Equal((uint)1, version.Major); | 157 | Assert.Equal((uint)1, version.Major); |
| 127 | Assert.Equal((uint)2, version.Minor); | 158 | Assert.Equal((uint)2, version.Minor); |
| 128 | Assert.Equal((uint)3, version.Patch); | 159 | Assert.Equal((uint)3, version.Patch); |
| 129 | Assert.Null(version.Revision); | 160 | Assert.Equal((uint)0, version.Revision); |
| 161 | Assert.True(version.HasMajor); | ||
| 162 | Assert.True(version.HasMinor); | ||
| 163 | Assert.True(version.HasPatch); | ||
| 164 | Assert.False(version.HasRevision); | ||
| 130 | Assert.Null(version.Labels); | 165 | Assert.Null(version.Labels); |
| 131 | Assert.Equal("abcd", version.Metadata); | 166 | Assert.Equal("abcd", version.Metadata); |
| 132 | } | 167 | } |
| @@ -134,8 +169,10 @@ namespace WixToolsetTest.Data | |||
| 134 | [Fact] | 169 | [Fact] |
| 135 | public void CannotParseUnexpectedContentAsMetadata() | 170 | public void CannotParseUnexpectedContentAsMetadata() |
| 136 | { | 171 | { |
| 137 | Assert.False(WixVersion.TryParse("1.2.3.abcd", out var _)); | 172 | Assert.False(WixVersion.TryParse("1.2.3.abcd", out var version)); |
| 138 | Assert.False(WixVersion.TryParse("1.2.3.-abcd", out var _)); | 173 | Assert.Null(version); |
| 174 | Assert.False(WixVersion.TryParse("1.2.3.-abcd", out version)); | ||
| 175 | Assert.Null(version); | ||
| 139 | } | 176 | } |
| 140 | 177 | ||
| 141 | [Fact] | 178 | [Fact] |
| @@ -147,6 +184,10 @@ namespace WixToolsetTest.Data | |||
| 147 | Assert.Equal((uint)20, version.Minor); | 184 | Assert.Equal((uint)20, version.Minor); |
| 148 | Assert.Equal((uint)30, version.Patch); | 185 | Assert.Equal((uint)30, version.Patch); |
| 149 | Assert.Equal((uint)40, version.Revision); | 186 | Assert.Equal((uint)40, version.Revision); |
| 187 | Assert.True(version.HasMajor); | ||
| 188 | Assert.True(version.HasMinor); | ||
| 189 | Assert.True(version.HasPatch); | ||
| 190 | Assert.True(version.HasRevision); | ||
| 150 | Assert.Null(version.Labels); | 191 | Assert.Null(version.Labels); |
| 151 | Assert.Null(version.Metadata); | 192 | Assert.Null(version.Metadata); |
| 152 | 193 | ||
| @@ -156,6 +197,10 @@ namespace WixToolsetTest.Data | |||
| 156 | Assert.Equal((uint)200, version2.Minor); | 197 | Assert.Equal((uint)200, version2.Minor); |
| 157 | Assert.Equal((uint)300, version2.Patch); | 198 | Assert.Equal((uint)300, version2.Patch); |
| 158 | Assert.Equal((uint)400, version2.Revision); | 199 | Assert.Equal((uint)400, version2.Revision); |
| 200 | Assert.True(version.HasMajor); | ||
| 201 | Assert.True(version.HasMinor); | ||
| 202 | Assert.True(version.HasPatch); | ||
| 203 | Assert.True(version.HasRevision); | ||
| 159 | Assert.Null(version2.Labels); | 204 | Assert.Null(version2.Labels); |
| 160 | Assert.Null(version2.Metadata); | 205 | Assert.Null(version2.Metadata); |
| 161 | } | 206 | } |
| @@ -169,6 +214,10 @@ namespace WixToolsetTest.Data | |||
| 169 | Assert.Equal(4294967295, version.Minor); | 214 | Assert.Equal(4294967295, version.Minor); |
| 170 | Assert.Equal(4294967295, version.Patch); | 215 | Assert.Equal(4294967295, version.Patch); |
| 171 | Assert.Equal(4294967295, version.Revision); | 216 | Assert.Equal(4294967295, version.Revision); |
| 217 | Assert.True(version.HasMajor); | ||
| 218 | Assert.True(version.HasMinor); | ||
| 219 | Assert.True(version.HasPatch); | ||
| 220 | Assert.True(version.HasRevision); | ||
| 172 | Assert.Null(version.Labels); | 221 | Assert.Null(version.Labels); |
| 173 | Assert.Null(version.Metadata); | 222 | Assert.Null(version.Metadata); |
| 174 | } | 223 | } |
| @@ -176,7 +225,8 @@ namespace WixToolsetTest.Data | |||
| 176 | [Fact] | 225 | [Fact] |
| 177 | public void CannotParseTooLargeNumbers() | 226 | public void CannotParseTooLargeNumbers() |
| 178 | { | 227 | { |
| 179 | Assert.False(WixVersion.TryParse("4294967296.4294967296.4294967296.4294967296", out var _)); | 228 | Assert.False(WixVersion.TryParse("4294967296.4294967296.4294967296.4294967296", out var version)); |
| 229 | Assert.Null(version); | ||
| 180 | } | 230 | } |
| 181 | 231 | ||
| 182 | [Fact] | 232 | [Fact] |
| @@ -188,6 +238,10 @@ namespace WixToolsetTest.Data | |||
| 188 | Assert.Equal((uint)2, version.Minor); | 238 | Assert.Equal((uint)2, version.Minor); |
| 189 | Assert.Equal((uint)3, version.Patch); | 239 | Assert.Equal((uint)3, version.Patch); |
| 190 | Assert.Equal((uint)4, version.Revision); | 240 | Assert.Equal((uint)4, version.Revision); |
| 241 | Assert.True(version.HasMajor); | ||
| 242 | Assert.True(version.HasMinor); | ||
| 243 | Assert.True(version.HasPatch); | ||
| 244 | Assert.True(version.HasRevision); | ||
| 191 | Assert.Equal("a", version.Labels[0].Label); | 245 | Assert.Equal("a", version.Labels[0].Label); |
| 192 | Assert.Null(version.Labels[0].Numeric); | 246 | Assert.Null(version.Labels[0].Numeric); |
| 193 | Assert.Equal("b", version.Labels[1].Label); | 247 | Assert.Equal("b", version.Labels[1].Label); |
