public void ConvertDataTriangle_WithInvalidRows_WritesFileWithInvalidRows() { var parsedIncrementalValues = new List <ProductIncrementalValue>(); var expectedOutputContent = new List <string>() { "SomeString1", "SomeString2" }; var invalidRow = new List <string>() { "SomeString" }; _mockedInputParser.Setup(x => x.ParseInput(It.IsAny <IList <string> >())).Returns(parsedIncrementalValues); _mockedInputParser.SetupGet(x => x.InvalidInputRows).Returns(invalidRow); _mockedOutputFormatter.Setup(x => x.CreateOutputContent(parsedIncrementalValues)) .Returns(expectedOutputContent); const string invalidFile = "InvalidFile"; _mockedFileOperation.Setup(fileOp => fileOp.GetFileNameInSameDirAsOutput(OutputFileName, "InvalidIncrementalValues")).Returns(invalidFile); var converter = new DataTriangleConverter(_mockedFileOperation.Object, _mockedInputParser.Object, _mockedOutputFormatter.Object); converter.ConvertDataTriangle(InputFileName, OutputFileName); _mockedFileOperation.Verify(fileOp => fileOp.WriteToFile(invalidFile, invalidRow), Times.Once()); _mockedFileOperation.Verify(fileOp => fileOp.WriteToFile(OutputFileName, expectedOutputContent), Times.Once()); }
public void ConvertDataTriangle_CorrectIncrementValues_CallsWrite() { var parsedIncrementalValues = new List <ProductIncrementalValue>(); var expectedOutputContent = new List <string>() { "SomeString1", "SomeString2" }; _mockedInputParser.Setup(x => x.ParseInput(It.IsAny <IList <string> >())).Returns(parsedIncrementalValues); _mockedInputParser.SetupGet(x => x.InvalidInputRows).Returns(new List <string>()); _mockedOutputFormatter.Setup(x => x.CreateOutputContent(parsedIncrementalValues)) .Returns(expectedOutputContent); var converter = new DataTriangleConverter(_mockedFileOperation.Object, _mockedInputParser.Object, _mockedOutputFormatter.Object); converter.ConvertDataTriangle(InputFileName, OutputFileName); _mockedFileOperation.Verify(fileOp => fileOp.WriteToFile(OutputFileName, expectedOutputContent), Times.Once()); }