public void PublishHTMLReportTest() { var token = new CancellationToken(); var publisher = new HtmlReportPublisher(_context, _mockClientFactory.Object, _serviceFactory); var containerPath = Constants.ReportDirectory + "_" + _context.BuildId; publisher.PublishHTMLReportAsync(_uploadDirectory, token).Wait(); _mockFileService.Verify(x => x.CopyToContainerAsync( It.Is <Tuple <string, string> >(a => a.Item1 == _uploadDirectory && a.Item2 == containerPath), It.Is <CancellationToken>(b => b == token), It.Is <bool>(c => c == true))); _mockBuildService.Verify(x => x.AssociateArtifact( It.Is <int>(a => a == _context.BuildId), It.Is <string>(b => b == containerPath), It.Is <string>(c => c == ArtifactResourceTypes.Container), It.Is <string>(d => d == string.Format($"#/{_context.ContainerId}/{containerPath}")), It.Is <Dictionary <string, string> >(e => e[Constants.ArtifactUploadEventProperties.ContainerFolder] == containerPath && e[Constants.ArtifactUploadEventProperties.ArtifactName] == containerPath && e[Constants.ArtifactUploadEventProperties.ArtifactType] == ArtifactResourceTypes.Container && e[Constants.ArtifactUploadEventProperties.Browsable] == bool.FalseString), It.Is <CancellationToken>(f => f == token))); Assert.IsFalse(_logger.Log.Contains("error:")); }
public void WillLogErrorIFDirectoryDoesntExist() { var token = new CancellationToken(); var publisher = new HtmlReportPublisher(_context, _mockClientFactory.Object, _serviceFactory); var containerPath = Constants.ReportDirectory + "_" + _context.BuildId; var directory = "D:\\" + Guid.NewGuid(); publisher.PublishHTMLReportAsync(directory, token).Wait(); Assert.IsTrue(_logger.Log.Contains("error")); Assert.IsTrue(_logger.Log.Contains("Directory not found")); }
public void WillRenameExtensionToHtml() { var token = new CancellationToken(); var publisher = new HtmlReportPublisher(_context, _mockClientFactory.Object, _serviceFactory); var containerPath = Constants.ReportDirectory + "_" + _context.BuildId; var htmIndex = Path.Join(_uploadDirectory, Constants.HtmIndexFile); var defaultIndex = Path.Join(_uploadDirectory, Constants.DefaultIndexFile); File.WriteAllText(htmIndex, ""); Assert.IsTrue(File.Exists(htmIndex)); Assert.IsFalse(File.Exists(defaultIndex)); publisher.PublishHTMLReportAsync(_uploadDirectory, token).Wait(); Assert.IsFalse(File.Exists(htmIndex)); Assert.IsTrue(File.Exists(defaultIndex)); }