// ***********************************************************************************************************/*VERSION 1Take Mock<InputService> and put it inside a function to create.Pass in the expected values, and pass in a stringbuilder as areference, so it can be tested later*/publicMock<InputService>GetInputMock(stringclientName,intinputFileId,StringBuilderstringBuilder){returnnewMock<InputService>(MockBehavior.Strict);mockInputService.Setup(x=>x.AddInputRow(It.IsAny<string>(),It.IsAny<int>(),It.IsAny<Dictionary<string,string>>())).Callback((stringclientName,intinputFileId,Dictionary<string,string>values)=>{Assert.AreEqual(client,clientName);Assert.AreEqual(fileId,inputFileId);if(stringBuilder.Length==0){stringheaderRow=string.Join(", ",values.Keys);stringBuilder.AppendLine(headerRow);}stringrow=string.Join(", ",values.Values);stringBuilder.AppendLine(row);});}[Test, TestCaseSource("GetDSVCases")][UseReporter(typeof(DiffReporter))][UseApprovalSubdirectory("Approvals/FileToInputConverterTests_DSV")]publicvoidParseDSVFiles(stringclient,stringfilePath,intfileId,InputDefinitioninputDef){varmockInputFile=newMock<InputFile>(MockBehavior.Strict);mockInputFile.Setup(x=>x.GetData()).Returns(newFileStream(filePath,FileMode.Open));mockInputFile.Object.Id=fileId;// CHANGED HEREStringBuilderstringBuilder=newStringBuilder();varmockInputService=GetInputMock(client,inputFileId,stringBuilder);varconverter=newFileToInputConverter(mockInputService.Object);converter.Parse(client,mockInputFile.Object,inputDef);using(ApprovalTests.Namers.ApprovalResults.ForScenario(inputDef.Name)){ApprovalTests.Approvals.Verify(stringBuilder.ToString());}}// ***********************************************************************************************************
Comments (0)
HTTPSSSH
You can clone a snippet to your computer for local editing.
Learn more.