コード例 #1
0
        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);
        }
コード例 #2
0
        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);
        }
コード例 #3
0
        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());
            }
        }