private OutputTemplateManager CreateOutputTemplateManager(string xmlPath = "a")
        {
            OutputTemplateManager outputTemplateManager =
                new OutputTemplateManager(xmlPath, _testRunResultParser, _fileSystemManager);

            return(outputTemplateManager);
        }
        public void CreateTestRuns_WhenThereAreTwoFilePaths_ShouldTwoTestRun()
        {
            // Arrange
            OutputTemplateManager outputTemplateManager = CreateOutputTemplateManager();
            var filePaths = new List <string> {
                "a", "b"
            };

            // Act
            var testRuns = outputTemplateManager.CreateTestRuns(filePaths);

            // Arrange
            Assert.AreEqual(2, testRuns.Count);
        }
        public void CreateOutputTemplateFactory_WhenThereAreMultipleFileInDirectory_ShouldReturnMultipleTestRunOutputTemplateFactory()
        {
            // Arrange
            var path = XmlPathUtility.GetTestXmlFolderPath();

            _fileSystemManager = new DefaultFileSystemManager();
            OutputTemplateManager outputTemplateManager = CreateOutputTemplateManager(path);

            // Act
            IOutputTemplateFactory factory = outputTemplateManager.CreateOutputTemplateFactory();

            // Assert
            Assert.AreEqual(typeof(MultipleTestRunOutputTemplateFactory), factory.GetType());
        }
        public void CreateTestRuns_WhenThereIsOneFilePath_ShouldTestRunResultParserReceivedOnce()
        {
            // Arrange
            OutputTemplateManager outputTemplateManager = CreateOutputTemplateManager();
            var filePath  = "a";
            var filePaths = new List <string> {
                filePath
            };

            // Act
            var testRuns = outputTemplateManager.CreateTestRuns(filePaths);

            // Arrange
            _testRunResultParser.Received(1).ParseXml(filePath);
        }
        public void CreateOutputTemplateFactory_WhenThereIsOneFileInPath_ShouldReturnMultipleTestRunOutputTemplateFactory()
        {
            // Arrange
            string xmlPath = "/test/test.xml";

            _fileSystemManager.EnumerateFiles(xmlPath).Returns(new List <string> {
                xmlPath
            });
            _testRunResultParser.ParseXml(xmlPath).Returns(new TestRun());
            OutputTemplateManager outputTemplateManager = CreateOutputTemplateManager(xmlPath);

            // Act
            var outputTemplateFactory = outputTemplateManager.CreateOutputTemplateFactory();

            // Assert
            Assert.AreEqual(outputTemplateFactory.GetType(), typeof(TestRunOutputTemplateFactory));
        }
コード例 #6
0
        // ReSharper disable once UnusedMember.Local
        private int OnExecute()
        {
            ITestResultsOutputWriterFactory outputWriterFactory = new DefaultTestResultsOutputWriterFactory();

            using (ITestResultsOutputWriter outputWriter = outputWriterFactory.Create(Output))
            {
                OutputTemplateManager  outputTemplateManager = new OutputTemplateManager(Path, new TestRunResultParser(Format), new DefaultFileSystemManager());
                IOutputTemplateFactory outputTemplateFactory = outputTemplateManager.CreateOutputTemplateFactory();
                IOutputTemplate        outputTemplate        = OutputTemplateManager.CreateOutputTemplate(outputTemplateFactory, Template);
                outputTemplate.Write(outputWriter);

                if (FailWhenResultIsFailed && !outputTemplateFactory.IsSuccess)
                {
                    return(-1);
                }
            }

            return(0);
        }
        public void CreateOutputTemplate(OutputTemplateType outputTemplateType)
        {
            // Arrange
            IOutputTemplateFactory outputTemplateFactory = Substitute.For <IOutputTemplateFactory>();

            // Act
            OutputTemplateManager.CreateOutputTemplate(outputTemplateFactory, outputTemplateType);

            // Assert
            if (outputTemplateType == OutputTemplateType.Summary)
            {
                outputTemplateFactory.Received(1).CreateSummaryOutputTemplate();
                outputTemplateFactory.Received(0).CreateTestResultOutputTemplate();
            }
            else if (outputTemplateType == OutputTemplateType.TestResult)
            {
                outputTemplateFactory.Received(0).CreateSummaryOutputTemplate();
                outputTemplateFactory.Received(1).CreateTestResultOutputTemplate();
            }
        }
        public void CreateOutputTemplate_ShouldThrowArgumentOutOfRange_WhenOutputTemplateTypeIsNone()
        {
            // Arrange
            IOutputTemplateFactory outputTemplateFactory = Substitute.For <IOutputTemplateFactory>();

            // Act
            ArgumentOutOfRangeException argumentOutOfRangeException = Assert.Throws <ArgumentOutOfRangeException>(() => OutputTemplateManager.CreateOutputTemplate(outputTemplateFactory, OutputTemplateType.None));

            // Assert
            Assert.AreEqual($"Exception of type 'System.ArgumentOutOfRangeException' was thrown.{Environment.NewLine}Parameter name: outputTemplateType{Environment.NewLine}Actual value was None.", argumentOutOfRangeException.Message);
        }