@@ -136,7 +136,7 @@ public class CoverletConsoleUtil_Tests
136
136
private CoverletConsoleUtil coverletConsoleUtil ;
137
137
private bool executed ;
138
138
private readonly List < string > coverletSettings = new List < string > { "setting1" , "setting2" } ;
139
- private readonly ExecuteResponse successfulExecuteResponse = new ExecuteResponse { ExitCode = 3 } ;
139
+ private readonly ExecuteResponse successfulExecuteResponse = new ExecuteResponse { ExitCode = 3 , Output = "Successful output" } ;
140
140
141
141
[ SetUp ]
142
142
public void SetUp ( )
@@ -165,21 +165,15 @@ public async Task Should_Execute_The_Request_From_The_Execute_Request_Provider_W
165
165
public async Task Should_Log_Settings_Before_Executing ( )
166
166
{
167
167
var mockLogger = mocker . GetMock < ILogger > ( ) ;
168
- var logged = false ;
169
168
mockLogger . Setup ( logger => logger . Log ( It . IsAny < IEnumerable < string > > ( ) ) ) . Callback < IEnumerable < string > > ( messages =>
170
169
{
171
- if ( ! logged )
170
+ var msgList = messages as List < string > ;
171
+ Assert . Multiple ( ( ) =>
172
172
{
173
- logged = true ;
174
-
175
- var msgList = messages as List < string > ;
176
- Assert . Multiple ( ( ) =>
177
- {
178
- Assert . That ( msgList [ 0 ] , Is . EqualTo ( "Coverlet Run (TheProjectName) - Arguments" ) ) ;
179
- Assert . That ( msgList . Skip ( 1 ) , Is . EquivalentTo ( coverletSettings ) ) ;
180
- Assert . That ( executed , Is . False ) ;
181
- } ) ;
182
- }
173
+ Assert . That ( msgList [ 0 ] , Is . EqualTo ( "Coverlet Run (TheProjectName) - Arguments" ) ) ;
174
+ Assert . That ( msgList . Skip ( 1 ) , Is . EqualTo ( coverletSettings ) ) ;
175
+ Assert . That ( executed , Is . False ) ;
176
+ } ) ;
183
177
} ) ;
184
178
185
179
await RunSuccessfullyAsync ( ) ;
@@ -191,20 +185,41 @@ public async Task Should_Log_Settings_Before_Executing()
191
185
public void Should_Throw_With_ExecuteResponse_Output_When_ExitCode_Is_Greater_Than_3 ( )
192
186
{
193
187
var failureExecuteResponse = new ExecuteResponse { ExitCode = 4 , Output = "failure message" } ;
194
- Assert . ThrowsAsync < Exception > ( ( ) => RunAsync ( failureExecuteResponse ) , "failure message" ) ;
188
+ var exception = Assert . ThrowsAsync < Exception > ( async ( ) => await RunAsync ( failureExecuteResponse ) ) ;
189
+
190
+ Assert . That ( exception . Message , Is . EqualTo ( "Error. Exit code: 4" ) ) ;
195
191
}
196
192
197
193
[ Test ]
198
- public void Should_Log_With_ExecuteResponse_Output_When_ExitCode_Is_Greater_Than_3 ( )
194
+ public void Should_Log_With_ExecuteResponse_ExitCode_And_Output_When_ExitCode_Is_Greater_Than_3 ( )
199
195
{
200
196
var failureExecuteResponse = new ExecuteResponse { ExitCode = 4 , Output = "failure message" } ;
201
197
202
-
203
- Assert . ThrowsAsync < Exception > ( ( ) => RunAsync ( failureExecuteResponse ) , "failure message" ) ;
198
+ Assert . ThrowsAsync < Exception > ( ( ) => RunAsync ( failureExecuteResponse ) ) ;
204
199
205
200
var mockLogger = mocker . GetMock < ILogger > ( ) ;
206
201
mockLogger . Verify ( logger => logger . Log ( "Coverlet Run (TheProjectName) Error. Exit code: 4" , "failure message" ) ) ;
207
202
}
203
+
204
+ [ Test ]
205
+ public async Task Should_Log_The_ExecuteResponse_Output_On_Success ( )
206
+ {
207
+ var mockLogger = mocker . GetMock < ILogger > ( ) ;
208
+ mockLogger . Setup ( logger => logger . Log ( It . IsAny < string [ ] > ( ) ) ) . Callback < string [ ] > ( messages =>
209
+ {
210
+ Assert . Multiple ( ( ) =>
211
+ {
212
+ Assert . That ( messages , Is . EqualTo ( new string [ ] { "Coverlet Run (TheProjectName) - Output" , successfulExecuteResponse . Output } ) ) ;
213
+ Assert . That ( executed , Is . True ) ;
214
+ } ) ;
215
+
216
+ } ) ;
217
+
218
+ await RunSuccessfullyAsync ( ) ;
219
+
220
+ mockLogger . Verify ( ) ;
221
+ }
222
+
208
223
private async Task RunSuccessfullyAsync ( )
209
224
{
210
225
await RunAsync ( successfulExecuteResponse ) ;
0 commit comments