public void WhenSourceBuildNotValidNullReturned() { // Arrange var sourceBuilder = new BuilderMock().Sets(false).Returns(null); bool valid; var target = new Builder <StorableTaggedFileBuilder>().With <IInfoBuilder <ID3File> >(sourceBuilder).Build(); // Act var result = target.Build(Arg.IsAny <FileInfo>(), out valid); // Assert Assert.IsNull(result); }
public void WhenSourceValidStorableTaggedFileReturned() { // Arrange var sourceBuilder = new BuilderMock().Returns(new ID3File(Path.Combine(Environment.CurrentDirectory, "Silence.mp3"))).Sets(true); bool valid; var target = new Builder <StorableTaggedFileBuilder>().With <IInfoBuilder <ID3File> >(sourceBuilder).Build(); // Act var result = target.Build(Arg.IsAny <FileInfo>(), out valid); // Assert Assert.IsInstanceOf <StorableTaggedFile>(result); }
public void ContextBuilderPluginExecutionIsDeferred() { using (var inputStream = new MemoryStream(Encoding.Unicode.GetBytes(new string('A', 512)))) { MessageMock.Object.BodyPart.Data = inputStream; var sut = new ContextBuilder { BuilderType = typeof(DummyBuilder), ExecutionMode = PluginExecutionMode.Deferred }; sut.Execute(PipelineContextMock.Object, MessageMock.Object); BuilderMock.Verify(pc => pc.Execute(It.IsAny <IBaseMessageContext>()), Times.Never()); MessageMock.Object.BodyPart.Data.Drain(); BuilderMock.Verify(pc => pc.Execute(It.IsAny <IBaseMessageContext>()), Times.Once()); } }