diff options
Diffstat (limited to 'src/test')
3 files changed, 122 insertions, 109 deletions
diff --git a/src/test/WixToolsetTest.Converters/ConverterFixture.cs b/src/test/WixToolsetTest.Converters/ConverterFixture.cs index 6e2ad2c5..cf89ba7e 100644 --- a/src/test/WixToolsetTest.Converters/ConverterFixture.cs +++ b/src/test/WixToolsetTest.Converters/ConverterFixture.cs | |||
@@ -40,110 +40,6 @@ namespace WixToolsetTest.Converters | |||
40 | } | 40 | } |
41 | 41 | ||
42 | [Fact] | 42 | [Fact] |
43 | public void CanFixWhitespace() | ||
44 | { | ||
45 | var parse = String.Join(Environment.NewLine, | ||
46 | "<?xml version='1.0' encoding='utf-8'?>", | ||
47 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
48 | " <Fragment>", | ||
49 | " <Property Id='Prop'", | ||
50 | " Value='Val'>", | ||
51 | " </Property>", | ||
52 | " </Fragment>", | ||
53 | "</Wix>"); | ||
54 | |||
55 | var expected = String.Join(Environment.NewLine, | ||
56 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
57 | " <Fragment>", | ||
58 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
59 | " </Fragment>", | ||
60 | "</Wix>"); | ||
61 | |||
62 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
63 | |||
64 | var messaging = new MockMessaging(); | ||
65 | var converter = new WixConverter(messaging, 4, null, null); | ||
66 | |||
67 | var errors = converter.ConvertDocument(document); | ||
68 | |||
69 | var actual = UnformattedDocumentString(document); | ||
70 | |||
71 | Assert.Equal(expected, actual); | ||
72 | Assert.Equal(5, errors); | ||
73 | } | ||
74 | |||
75 | [Fact] | ||
76 | public void CanPreserveNewLines() | ||
77 | { | ||
78 | var parse = String.Join(Environment.NewLine, | ||
79 | "<?xml version='1.0' encoding='utf-8'?>", | ||
80 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
81 | " <Fragment>", | ||
82 | "", | ||
83 | " <Property Id='Prop' Value='Val' />", | ||
84 | "", | ||
85 | " </Fragment>", | ||
86 | "</Wix>"); | ||
87 | |||
88 | var expected = String.Join(Environment.NewLine, | ||
89 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
90 | " <Fragment>", | ||
91 | "", | ||
92 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
93 | "", | ||
94 | " </Fragment>", | ||
95 | "</Wix>"); | ||
96 | |||
97 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
98 | |||
99 | var messaging = new MockMessaging(); | ||
100 | var converter = new WixConverter(messaging, 4, null, null); | ||
101 | |||
102 | var conversions = converter.ConvertDocument(document); | ||
103 | |||
104 | var actual = UnformattedDocumentString(document); | ||
105 | |||
106 | Assert.Equal(expected, actual); | ||
107 | Assert.Equal(4, conversions); | ||
108 | } | ||
109 | |||
110 | [Fact] | ||
111 | public void CanConvertWithNewLineAtEndOfFile() | ||
112 | { | ||
113 | var parse = String.Join(Environment.NewLine, | ||
114 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
115 | " <Fragment>", | ||
116 | "", | ||
117 | " <Property Id='Prop' Value='Val' />", | ||
118 | "", | ||
119 | " </Fragment>", | ||
120 | "</Wix>", | ||
121 | ""); | ||
122 | |||
123 | var expected = String.Join(Environment.NewLine, | ||
124 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
125 | " <Fragment>", | ||
126 | "", | ||
127 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
128 | "", | ||
129 | " </Fragment>", | ||
130 | "</Wix>", | ||
131 | ""); | ||
132 | |||
133 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
134 | |||
135 | var messaging = new MockMessaging(); | ||
136 | var converter = new WixConverter(messaging, 4, null, null); | ||
137 | |||
138 | var conversions = converter.ConvertDocument(document); | ||
139 | |||
140 | var actual = UnformattedDocumentString(document); | ||
141 | |||
142 | Assert.Equal(expected, actual); | ||
143 | Assert.Equal(3, conversions); | ||
144 | } | ||
145 | |||
146 | [Fact] | ||
147 | public void CanConvertMainNamespace() | 43 | public void CanConvertMainNamespace() |
148 | { | 44 | { |
149 | var parse = String.Join(Environment.NewLine, | 45 | var parse = String.Join(Environment.NewLine, |
diff --git a/src/test/WixToolsetTest.Converters/ConverterIntegrationFixture.cs b/src/test/WixToolsetTest.Converters/ConverterIntegrationFixture.cs index 5eaeb985..79cc3f69 100644 --- a/src/test/WixToolsetTest.Converters/ConverterIntegrationFixture.cs +++ b/src/test/WixToolsetTest.Converters/ConverterIntegrationFixture.cs | |||
@@ -84,7 +84,7 @@ namespace WixToolsetTest.Converters | |||
84 | var settingsFile = Path.Combine(folder, "wixcop.settings.xml"); | 84 | var settingsFile = Path.Combine(folder, "wixcop.settings.xml"); |
85 | 85 | ||
86 | var result = RunConversion(targetFile, settingsFile: settingsFile); | 86 | var result = RunConversion(targetFile, settingsFile: settingsFile); |
87 | Assert.Equal(2, result.ExitCode); | 87 | Assert.Equal(7, result.ExitCode); |
88 | 88 | ||
89 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); | 89 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); |
90 | var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n"); | 90 | var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n"); |
@@ -108,7 +108,7 @@ namespace WixToolsetTest.Converters | |||
108 | File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName)); | 108 | File.Copy(Path.Combine(folder, beforeFileName), Path.Combine(baseFolder, beforeFileName)); |
109 | 109 | ||
110 | var result = RunConversion(targetFile); | 110 | var result = RunConversion(targetFile); |
111 | Assert.Equal(2, result.ExitCode); | 111 | Assert.Equal(10, result.ExitCode); |
112 | 112 | ||
113 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); | 113 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); |
114 | var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n"); | 114 | var actual = File.ReadAllText(targetFile).Replace("\r\n", "\n"); |
@@ -133,7 +133,7 @@ namespace WixToolsetTest.Converters | |||
133 | 133 | ||
134 | var result = RunConversion(targetFile); | 134 | var result = RunConversion(targetFile); |
135 | 135 | ||
136 | Assert.Equal(2, result.ExitCode); | 136 | Assert.Equal(10, result.ExitCode); |
137 | Assert.Single(result.Messages.Where(message => message.ToString().EndsWith("(QtExecCmdTimeoutAmbiguous)"))); | 137 | Assert.Single(result.Messages.Where(message => message.ToString().EndsWith("(QtExecCmdTimeoutAmbiguous)"))); |
138 | 138 | ||
139 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); | 139 | var expected = File.ReadAllText(Path.Combine(folder, afterFileName)).Replace("\r\n", "\n"); |
@@ -142,7 +142,7 @@ namespace WixToolsetTest.Converters | |||
142 | 142 | ||
143 | // still fails because QtExecCmdTimeoutAmbiguous is unfixable | 143 | // still fails because QtExecCmdTimeoutAmbiguous is unfixable |
144 | var result2 = RunConversion(targetFile); | 144 | var result2 = RunConversion(targetFile); |
145 | Assert.Equal(2, result2.ExitCode); | 145 | Assert.Equal(1, result2.ExitCode); |
146 | } | 146 | } |
147 | } | 147 | } |
148 | 148 | ||
@@ -153,7 +153,7 @@ namespace WixToolsetTest.Converters | |||
153 | var exitCode = WixRunner.Execute(new[] | 153 | var exitCode = WixRunner.Execute(new[] |
154 | { | 154 | { |
155 | "convert", | 155 | "convert", |
156 | fixErrors ? "-f" : null, | 156 | fixErrors ? null : "--dry-run", |
157 | String.IsNullOrEmpty(settingsFile) ? null : "-set1" + settingsFile, | 157 | String.IsNullOrEmpty(settingsFile) ? null : "-set1" + settingsFile, |
158 | targetFile | 158 | targetFile |
159 | }, serviceProvider, out var messages); | 159 | }, serviceProvider, out var messages); |
diff --git a/src/test/WixToolsetTest.Converters/FormatFixture.cs b/src/test/WixToolsetTest.Converters/FormatFixture.cs new file mode 100644 index 00000000..739fba66 --- /dev/null +++ b/src/test/WixToolsetTest.Converters/FormatFixture.cs | |||
@@ -0,0 +1,117 @@ | |||
1 | // Copyright (c) .NET Foundation and contributors. All rights reserved. Licensed under the Microsoft Reciprocal License. See LICENSE.TXT file in the project root for full license information. | ||
2 | |||
3 | namespace WixToolsetTest.Converters | ||
4 | { | ||
5 | using System; | ||
6 | using System.Xml.Linq; | ||
7 | using WixToolset.Converters; | ||
8 | using WixToolsetTest.Converters.Mocks; | ||
9 | using Xunit; | ||
10 | |||
11 | public class FormatFixture : BaseConverterFixture | ||
12 | { | ||
13 | [Fact] | ||
14 | public void CanFixWhitespace() | ||
15 | { | ||
16 | var parse = String.Join(Environment.NewLine, | ||
17 | "<?xml version='1.0' encoding='utf-8'?>", | ||
18 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
19 | " <Fragment>", | ||
20 | " <Property Id='Prop'", | ||
21 | " Value='Val'>", | ||
22 | " </Property>", | ||
23 | " </Fragment>", | ||
24 | "</Wix>"); | ||
25 | |||
26 | var expected = String.Join(Environment.NewLine, | ||
27 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
28 | " <Fragment>", | ||
29 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
30 | " </Fragment>", | ||
31 | "</Wix>"); | ||
32 | |||
33 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
34 | |||
35 | var messaging = new MockMessaging(); | ||
36 | var converter = new WixConverter(messaging, 4, null, null); | ||
37 | |||
38 | var errors = converter.FormatDocument(document); | ||
39 | |||
40 | var actual = UnformattedDocumentString(document); | ||
41 | |||
42 | Assert.Equal(expected, actual); | ||
43 | Assert.Equal(5, errors); | ||
44 | } | ||
45 | |||
46 | [Fact] | ||
47 | public void CanPreserveNewLines() | ||
48 | { | ||
49 | var parse = String.Join(Environment.NewLine, | ||
50 | "<?xml version='1.0' encoding='utf-8'?>", | ||
51 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
52 | " <Fragment>", | ||
53 | "", | ||
54 | " <Property Id='Prop' Value='Val' />", | ||
55 | "", | ||
56 | " </Fragment>", | ||
57 | "</Wix>"); | ||
58 | |||
59 | var expected = String.Join(Environment.NewLine, | ||
60 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
61 | " <Fragment>", | ||
62 | "", | ||
63 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
64 | "", | ||
65 | " </Fragment>", | ||
66 | "</Wix>"); | ||
67 | |||
68 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
69 | |||
70 | var messaging = new MockMessaging(); | ||
71 | var converter = new WixConverter(messaging, 4, null, null); | ||
72 | |||
73 | var conversions = converter.FormatDocument(document); | ||
74 | |||
75 | var actual = UnformattedDocumentString(document); | ||
76 | |||
77 | Assert.Equal(expected, actual); | ||
78 | Assert.Equal(4, conversions); | ||
79 | } | ||
80 | |||
81 | [Fact] | ||
82 | public void CanFormatWithNewLineAtEndOfFile() | ||
83 | { | ||
84 | var parse = String.Join(Environment.NewLine, | ||
85 | "<Wix xmlns='http://wixtoolset.org/schemas/v4/wxs'>", | ||
86 | " <Fragment>", | ||
87 | "", | ||
88 | " <Property Id='Prop' Value='Val' />", | ||
89 | "", | ||
90 | " </Fragment>", | ||
91 | "</Wix>", | ||
92 | ""); | ||
93 | |||
94 | var expected = String.Join(Environment.NewLine, | ||
95 | "<Wix xmlns=\"http://wixtoolset.org/schemas/v4/wxs\">", | ||
96 | " <Fragment>", | ||
97 | "", | ||
98 | " <Property Id=\"Prop\" Value=\"Val\" />", | ||
99 | "", | ||
100 | " </Fragment>", | ||
101 | "</Wix>", | ||
102 | ""); | ||
103 | |||
104 | var document = XDocument.Parse(parse, LoadOptions.PreserveWhitespace | LoadOptions.SetLineInfo); | ||
105 | |||
106 | var messaging = new MockMessaging(); | ||
107 | var converter = new WixConverter(messaging, 4, null, null); | ||
108 | |||
109 | var conversions = converter.FormatDocument(document); | ||
110 | |||
111 | var actual = UnformattedDocumentString(document); | ||
112 | |||
113 | Assert.Equal(expected, actual); | ||
114 | Assert.Equal(3, conversions); | ||
115 | } | ||
116 | } | ||
117 | } | ||