public void TestEnumerateSingleChunkWithFeeding() { bool feeded = false; using ( var buffer = ChunkBuffer.CreateDefault() ) { buffer.Feed( Enumerable.Range( 1, 2 ).Select( item => ( byte )item ).ToArray() ); using ( var target = new RpcInputBuffer<object, object>( buffer, ( _0, _1, _2 ) => ChunkBuffer.CreateDefault(), ( _0, _1, _2 ) => { if ( feeded ) { return default( BufferFeeding ); } feeded = true; buffer.Feed( Enumerable.Range( 3, 4 ).Select( item => ( byte )item ).ToArray() ); return new BufferFeeding( 4 ); }, null ) ) { CollectionAssert.AreEqual( Enumerable.Range( 1, 6 ).ToArray(), target.ToArray() ); } } }
public void TestEnumerateSingleChunk() { using ( var buffer = ChunkBuffer.CreateDefault() ) { var expected = Enumerable.Range( 1, 2 ).Select( item => ( byte )item ).ToArray(); buffer.Feed( expected.ToArray() ); using ( var target = new RpcInputBuffer<object, object>( buffer, ( _0, _1, _2 ) => ChunkBuffer.CreateDefault(), ( _0, _1, _2 ) => default( BufferFeeding ), null ) ) { CollectionAssert.AreEqual( expected, target.ToArray() ); } } }