static IBlockCompressor SetupBlockCompressor( ProducerConsumer <IByteChunk> readerToProcessorsChain, IBlockCompressorUowOutputFactory outputFactory) { var blockCompressorUowFactory = new BlockCompressorUowFactory(readerToProcessorsChain, outputFactory, new GzipStream()); var starter = new BlockCompressorStarter(new ThreadingImpl(), blockCompressorUowFactory); return(new BlockCompressor(CompressThreadsCount, starter)); }
public void BlockCompressorUowFactoryShouldWorkAsExpected() { // Arrange var gzipStream = MockRepository.GenerateMock <IGzipStream>(); var input = MockRepository.GenerateMock <IProducerConsumer <IByteChunk> >(); var output = MockRepository.GenerateMock <IProducerConsumer <IByteChunk> >(); var outputFactory = MockRepository.GenerateMock <IBlockCompressorUowOutputFactory>(); outputFactory.Expect(t => t.CreateOutput()).Repeat.Once().Return(output); var factory = new BlockCompressorUowFactory(input, outputFactory, gzipStream); // Act factory.Create(); // Assert outputFactory.VerifyAllExpectations(); }