示例#1
0
        public void CoverageReportGeneratorShouldInvokeGenerateOnReportGeneratorWrapper()
        {
            const string path                = "somePath";
            const string outPath             = "someLocation";
            var          ioMock              = new Mock <IDiskIOWrapper>();
            var          reportGeneratorMock = new Mock <IReportGeneratorWrapper>();

            ioMock.Setup(mock => mock.FileExists(path))
            .Returns(true);
            var converter = new CoverageReportConverter(ioMock.Object, reportGeneratorMock.Object);

            converter.Convert(path, outPath);

            reportGeneratorMock.Verify(mock => mock.Generate(path, outPath), Times.Once);
        }
示例#2
0
        public void ReturnOriginalFilePathIfNoConversionIsNecessary(string path)
        {
            const string outPath             = "someLocation";
            var          ioMock              = new Mock <IDiskIOWrapper>();
            var          reportGeneratorMock = new Mock <IReportGeneratorWrapper>();

            ioMock.Setup(mock => mock.FileExists(path))
            .Returns(true);
            var converter = new CoverageReportConverter(ioMock.Object, reportGeneratorMock.Object);

            var result = converter.Convert(path, outPath);

            result.Match(x => x, string.Empty)
            .Should()
            .Be(path);
            reportGeneratorMock.Verify(mock => mock.Generate(It.IsAny <string>(), It.IsAny <string>()), Times.Never);
        }
示例#3
0
        public void CoverageReportConverterShouldThrowFileNotFoundExceptionIfInputFileWasNotFound()
        {
            const string path   = "invalidPath";
            var          ioMock = new Mock <IDiskIOWrapper>();
            var          reportGeneratorMock = new Mock <IReportGeneratorWrapper>();

            ioMock.Setup(mock => mock.FileExists(path))
            .Returns(false);
            var converter = new CoverageReportConverter(ioMock.Object, reportGeneratorMock.Object);

            Action act = () => converter.Convert(path, "any");

            act.Should()
            .Throw <FileNotFoundException>()
            .WithMessage($"*{path}*");
            ioMock.Verify(mock => mock.FileExists(path), Times.Once);
        }
示例#4
0
        public void IfReportGeneratorFailsConvertShouldReturnNone()
        {
            const string path                = "somePath";
            const string outPath             = "someLocation";
            var          ioMock              = new Mock <IDiskIOWrapper>();
            var          reportGeneratorMock = new Mock <IReportGeneratorWrapper>();

            reportGeneratorMock.Setup(mock => mock.Generate(path, outPath))
            .Returns(false);
            ioMock.Setup(mock => mock.FileExists(path))
            .Returns(true);
            var converter = new CoverageReportConverter(ioMock.Object, reportGeneratorMock.Object);

            var result = converter.Convert(path, outPath);

            result.IsNone
            .Should()
            .BeTrue();
        }
示例#5
0
        public void IfReportConversionIsSuccessfulConvertShouldReturnFullPathToNewReport()
        {
            const string path                = "somePath";
            const string outPath             = "someLocation";
            var          ioMock              = new Mock <IDiskIOWrapper>();
            var          reportGeneratorMock = new Mock <IReportGeneratorWrapper>();

            reportGeneratorMock.Setup(mock => mock.Generate(path, outPath))
            .Returns(true);
            ioMock.Setup(mock => mock.FileExists(path))
            .Returns(true);
            var converter = new CoverageReportConverter(ioMock.Object, reportGeneratorMock.Object);

            var result = converter.Convert(path, outPath);

            result.Match(x => x, () => string.Empty)
            .Should()
            .BeEquivalentTo(Path.Join(outPath, "Cobertura.xml"));
        }