public void DemoSpyTest() { using (ShimsContext.Create()) { int cont = 0; const string filename = @"D:\Cursos\dotnet\MSTEST20200518\Demos.Tests\AreaTest.csv"; System.IO.Fakes.ShimFile.ReadAllLinesString = s => { Assert.AreEqual(filename, s); cont++; string[] rslt = null; ShimsContext.ExecuteWithoutShims(() => { rslt = File.ReadAllLines(s); }); return(rslt); }; var arrage = new LoadTextFile(filename); Assert.AreEqual(1, cont); AreEqual(4, arrage.Size); } }
public void DemoShimTest() { var obj = new LoadTextFile(@"D:\Cursos\dotnet\MSTEST20200518\Demos.Tests\AreaTest.csv"); IProcessTextFile calc = new StubIProcessTextFile() { CalculateILoadTextFile = (ILoadTextFile arg) => arg.Size == 3 ? "OK" : "KO" }; using (Microsoft.QualityTools.Testing.Fakes.ShimsContext.Create()) { System.IO.Fakes.ShimFile.ReadAllLinesString = s => new string[] { "cero", "uno", "dos" }; var arrage = new LoadTextFile(@"D:\Cursos\dotnet\MSTEST20200518\Demos.Tests\AreaTest.csv"); Assert.IsTrue(arrage.IsLoad); Assert.AreEqual(3, arrage.Size); Assert.AreEqual("dos", arrage.Lines[2]); Assert.AreEqual("uno", arrage.Lines[1]); Assert.AreEqual("cero", arrage.Lines[0]); var rslt = calc.Calculate(arrage); IsNotNull(arrage); //AreEqual(4, arrage.Size); AreEqual("OK", rslt); } }