|
13 | 13 | using FineCodeCoverage.Engine.ReportGenerator;
|
14 | 14 | using FineCodeCoverage.Impl;
|
15 | 15 | using FineCodeCoverage.Options;
|
| 16 | +using FineCodeCoverage.Output; |
16 | 17 | using Moq;
|
17 | 18 | using NUnit.Framework;
|
18 | 19 |
|
@@ -254,30 +255,51 @@ public async Task Should_Not_Run_ReportGenerator_If_No_Successful_Projects()
|
254 | 255 | }
|
255 | 256 |
|
256 | 257 | [Test]
|
257 |
| - public async Task Should_Process_ReportGenerator_Output_If_Success() |
| 258 | + public async Task Should_Process_ReportGenerator_Output_If_Success_Raising_Events() |
258 | 259 | {
|
259 | 260 | var passedProject = CreateSuitableProject();
|
260 |
| - |
| 261 | + var reportGeneratorResult = new ReportGeneratorResult |
| 262 | + { |
| 263 | + UnifiedXmlFile = "Unified xml file", |
| 264 | + UnifiedHtml = "Unified html", |
| 265 | + HotspotsFile = "Hotspots file path", |
| 266 | + |
| 267 | + }; |
261 | 268 | var mockReportGenerator = mocker.GetMock<IReportGeneratorUtil>();
|
262 | 269 | mockReportGenerator.Setup(rg =>
|
263 | 270 | rg.GenerateAsync(
|
264 | 271 | It.IsAny<IEnumerable<string>>(),
|
265 | 272 | It.IsAny<string>(),
|
266 | 273 | It.IsAny<CancellationToken>()
|
267 | 274 | ).Result)
|
268 |
| - .Returns( |
269 |
| - new ReportGeneratorResult |
270 |
| - { |
271 |
| - UnifiedXmlFile = "Unified xml file", |
272 |
| - UnifiedHtml = "Unified html" |
273 |
| - } |
274 |
| - ); |
| 275 | + .Returns(reportGeneratorResult); |
| 276 | + |
| 277 | + mockReportGenerator.Setup(rg => rg.ProcessUnifiedHtml("Unified html", It.IsAny<string>())).Returns("processed"); |
275 | 278 |
|
276 |
| - mockReportGenerator.Setup(rg => rg.ProcessUnifiedHtml("Unified html", It.IsAny<string>())); |
| 279 | + var mockCoberturaUtil = mocker.GetMock<ICoberturaUtil>(); |
| 280 | + var fileLineCoverage = new FileLineCoverage(); |
| 281 | + mockCoberturaUtil.Setup(coberturaUtil => coberturaUtil.ProcessCoberturaXml("Unified xml file")).Returns(fileLineCoverage); |
277 | 282 |
|
278 | 283 | await ReloadInitializedCoverage(passedProject.Object);
|
279 |
| - mocker.Verify<ICoberturaUtil>(coberturaUtil => coberturaUtil.ProcessCoberturaXml("Unified xml file")); |
| 284 | + |
280 | 285 | mockReportGenerator.VerifyAll();
|
| 286 | + mockReportGenerator.Verify(reportGenerator => reportGenerator.EndOfCoverageRun()); |
| 287 | + |
| 288 | + mocker.Verify<IEventAggregator>(eventAggregator => eventAggregator.SendMessage( |
| 289 | + It.Is<NewCoverageLinesMessage>(message => message.CoverageLines == fileLineCoverage), |
| 290 | + null |
| 291 | + )); |
| 292 | + |
| 293 | + mocker.Verify<IEventAggregator>(eventAggregator => eventAggregator.SendMessage( |
| 294 | + It.Is<NewReportMessage>(message => message.Report == "processed"), |
| 295 | + null |
| 296 | + )); |
| 297 | + |
| 298 | + mocker.Verify<IEventAggregator>(eventAggregator => eventAggregator.SendMessage( |
| 299 | + It.Is<ReportFilesMessage>(message => message.CoberturaFile == reportGeneratorResult.UnifiedXmlFile && message.HotspotsFile == reportGeneratorResult.HotspotsFile), |
| 300 | + null |
| 301 | + )); |
| 302 | + |
281 | 303 | }
|
282 | 304 |
|
283 | 305 | [Test]
|
|
0 commit comments