@@ -15,7 +15,26 @@ namespace NUnit.TextDisplay
15
15
public class ResultReporterTests
16
16
{
17
17
private XmlNode _result ;
18
- private StringBuilder _report ;
18
+
19
+ private StringBuilder _reportBuilder ;
20
+ private ExtendedTextWrapper _writer ;
21
+
22
+ private string ReportOutput => _reportBuilder . ToString ( ) ;
23
+
24
+ private List < string > ReportLines
25
+ {
26
+ get
27
+ {
28
+ var rdr = new StringReader ( ReportOutput ) ;
29
+
30
+ string ? line ;
31
+ var lines = new List < string > ( ) ;
32
+ while ( ( line = rdr . ReadLine ( ) ) is not null )
33
+ lines . Add ( line ) ;
34
+
35
+ return lines ;
36
+ }
37
+ }
19
38
20
39
[ OneTimeSetUp ]
21
40
public void CreateResult ( )
@@ -44,19 +63,19 @@ public void CreateResult()
44
63
}
45
64
46
65
[ SetUp ]
47
- public void CreateReporter ( )
66
+ public void SetUp ( )
48
67
{
49
- _report = new StringBuilder ( ) ;
50
- var writer = new ExtendedTextWrapper ( new StringWriter ( _report ) ) ;
68
+ _reportBuilder = new StringBuilder ( ) ;
69
+ _writer = new ExtendedTextWrapper ( new StringWriter ( _reportBuilder ) ) ;
51
70
}
52
71
72
+ [ TearDown ]
73
+ public void TearDown ( ) => _writer . Dispose ( ) ;
74
+
53
75
[ Test ]
54
76
public void ReportSequenceTest ( )
55
77
{
56
- var sb = new StringBuilder ( ) ;
57
- var writer = new ExtendedTextWrapper ( new StringWriter ( sb ) ) ;
58
- ResultReporter . ReportResults ( new ResultSummary ( _result ) , writer ) ;
59
- var report = sb . ToString ( ) ;
78
+ ResultReporter . ReportResults ( new ResultSummary ( _result ) , _writer ) ;
60
79
61
80
var reportSequence = new [ ]
62
81
{
@@ -69,7 +88,7 @@ public void ReportSequenceTest()
69
88
70
89
foreach ( string title in reportSequence )
71
90
{
72
- var index = report . IndexOf ( title ) ;
91
+ var index = ReportOutput . IndexOf ( title ) ;
73
92
Assert . That ( index > 0 , "Report not found: " + title ) ;
74
93
Assert . That ( index > last , "Report out of sequence: " + title ) ;
75
94
last = index ;
@@ -94,11 +113,8 @@ public void SummaryReportTest()
94
113
} ;
95
114
#pragma warning restore SA1137 // Elements should have the same indentation
96
115
97
- var report = new StringBuilder ( ) ;
98
- var writer = new ExtendedTextWrapper ( new StringWriter ( report ) ) ;
99
- ResultReporter . WriteSummaryReport ( _result , new ResultSummary ( _result ) , writer ) ;
100
- var lines = GetReportLines ( report . ToString ( ) ) ;
101
- Assert . That ( lines , Is . EqualTo ( expected ) ) ;
116
+ ResultReporter . WriteSummaryReport ( new ResultSummary ( _result ) , _writer ) ;
117
+ Assert . That ( ReportLines , Is . EqualTo ( expected ) ) ;
102
118
}
103
119
104
120
[ Test ]
@@ -123,14 +139,10 @@ public void ErrorsFailuresAndWarningsReportTest()
123
139
"No suitable constructor was found"
124
140
} ;
125
141
126
- var sb = new StringBuilder ( ) ;
127
- var writer = new ExtendedTextWrapper ( new StringWriter ( sb ) ) ;
128
- ResultReporter . WriteErrorsFailuresAndWarningsReport ( _result , writer ) ;
129
-
130
- var report = sb . ToString ( ) ;
142
+ ResultReporter . WriteErrorsFailuresAndWarningsReport ( _result , _writer ) ;
131
143
132
144
foreach ( var item in expected )
133
- Assert . That ( report . Contains ( item ) ) ;
145
+ Assert . That ( ReportOutput . Contains ( item ) ) ;
134
146
}
135
147
136
148
[ Test ]
@@ -162,11 +174,8 @@ public void TestsNotRunTest()
162
174
string . Empty
163
175
} ;
164
176
165
- var report = new StringBuilder ( ) ;
166
- var writer = new ExtendedTextWrapper ( new StringWriter ( report ) ) ;
167
- ResultReporter . WriteNotRunReport ( _result , writer ) ;
168
- var lines = GetReportLines ( report . ToString ( ) ) ;
169
- Assert . That ( lines , Is . EqualTo ( expected ) ) ;
177
+ ResultReporter . WriteNotRunReport ( _result , _writer ) ;
178
+ Assert . That ( ReportLines , Is . EqualTo ( expected ) ) ;
170
179
}
171
180
172
181
[ Test , Explicit ( "Displays failure behavior" ) ]
@@ -186,28 +195,13 @@ public void TestParameterSettingsWrittenCorrectly()
186
195
" 2 -> |c|"
187
196
} ;
188
197
189
- var report = new StringBuilder ( ) ;
190
- var writer = new ExtendedTextWrapper ( new StringWriter ( report ) ) ;
191
- ResultReporter . WriteRunSettingsReport ( _result , writer ) ;
192
- var lines = GetReportLines ( report . ToString ( ) ) ;
193
- Assert . That ( lines , Is . SupersetOf ( expected ) ) ;
198
+ ResultReporter . WriteRunSettingsReport ( _result , _writer ) ;
199
+ Assert . That ( ReportLines , Is . SupersetOf ( expected ) ) ;
194
200
}
195
201
196
202
private static TestEngineResult AddMetadata ( TestEngineResult input )
197
203
{
198
204
return input . Aggregate ( "test-run start-time=\" 2015-10-19 02:12:28Z\" end-time=\" 2015-10-19 02:12:29Z\" duration=\" 0.348616\" " , string . Empty , string . Empty , string . Empty ) ;
199
205
}
200
-
201
- private static List < string > GetReportLines ( string report )
202
- {
203
- var rdr = new StringReader ( report . ToString ( ) ) ;
204
-
205
- string ? line ;
206
- var lines = new List < string > ( ) ;
207
- while ( ( line = rdr . ReadLine ( ) ) is not null )
208
- lines . Add ( line ) ;
209
-
210
- return lines ;
211
- }
212
206
}
213
207
}
0 commit comments