public void SetAnyEmptyBufferAsDestinationBuffer_ShouldThrowException_NoBufferIsEmpty() { var numberOfBuffers = 3; IInputBuffer[] inputBuffers; IOutputBuffer[] outputBuffers; getIOBuffers(out inputBuffers, out outputBuffers, 2); inputBuffers[0].HasNext().Returns(true); inputBuffers[1].HasNext().Returns(true); inputBuffers[0].HasDummy().Returns(true); inputBuffers[1].HasDummy().Returns(true); var mergeBuffering = new MergeBufferingIO(ref inputBuffers, ref outputBuffers, 0); Assert.Throws <Exception>(() => mergeBuffering.SetAnyEmptyBufferAsDestinationBuffer()); }
public void GetInputBuffer_DestinationBufferIsAtIndex0_InputBufferWithIndex0ShouldNotBeReturned() { var expectedRecord = Record.Max; IInputBuffer[] inputBuffers; IOutputBuffer[] outputBuffers; getIOBuffers(out inputBuffers, out outputBuffers, 3); inputBuffers[0].HasNext().Returns(false); inputBuffers[1].HasNext().Returns(true); inputBuffers[2].HasNext().Returns(true); inputBuffers[0].GetNextRecord().Returns(Record.NullRecord); inputBuffers[1].GetNextRecord().Returns(expectedRecord); inputBuffers[2].GetNextRecord().Returns(expectedRecord); var mergeBuffering = new MergeBufferingIO(ref inputBuffers, ref outputBuffers, 0); Assert.AreEqual(expectedRecord, mergeBuffering.GetInputBuffer(0).GetNextRecord()); Assert.AreEqual(expectedRecord, mergeBuffering.GetInputBuffer(1).GetNextRecord()); }
public void SetAnyEmptyBufferAsDestinationBuffer_ShouldReturnDesiredBuffer_SelectedBufferHasIndex0() { var numberOfBuffers = 3; IInputBuffer[] inputBuffers; IOutputBuffer[] outputBuffers; getIOBuffers(out inputBuffers, out outputBuffers, 3); inputBuffers[0].HasNext().Returns(true); inputBuffers[1].HasNext().Returns(true); inputBuffers[2].HasNext().Returns(false); inputBuffers[0].HasDummy().Returns(false); inputBuffers[1].HasDummy().Returns(false); inputBuffers[2].HasDummy().Returns(false); var mergeBuffering = new MergeBufferingIO(ref inputBuffers, ref outputBuffers, 0); var expectedSelectedBuffer = 2; mergeBuffering.SetAnyEmptyBufferAsDestinationBuffer(); var actualSelectedBuffer = mergeBuffering.GetDestinationBufferIndex(); Assert.AreEqual(expectedSelectedBuffer, actualSelectedBuffer); }