public async Task LineProcessingFilter_Send_Use_ElementsEnumerable_Results_Correct() { string rawLine = "1, 2,3"; var expected = new List <Element>() { new Element("asd") }; var enumerableFactorySub = Substitute.For <IElementsEnumerableFactory>(); enumerableFactorySub.Create(Arg.Is(rawLine)).Returns(expected); var context = new LineProcessingContext { RawLine = rawLine, LineIndex = 10 }; var filter = new RawLineProcessingFilter(enumerableFactorySub); await filter.Send(context, new EmptyPipe <LineProcessingContext>()); CollectionAssert.AreEquivalent( expected.Select(e => e.Value), context.ProcessedLine.Elements.Select(e => e.Value)); }
public async Task LineProcessingFilter_Send_Create_ElementsEnumerable_Correct() { string rawLine = "1, 2,3"; var context = new LineProcessingContext { RawLine = rawLine, LineIndex = 10 }; var enumerableFactorySub = Substitute.For <IElementsEnumerableFactory>(); var filter = new RawLineProcessingFilter(enumerableFactorySub); await filter.Send(context, new EmptyPipe <LineProcessingContext>()); enumerableFactorySub .Received(Quantity.Exactly(1)) .Create(Arg.Is(rawLine)); }