### Question:
IpcBuffer { public int position() { return position; } IpcBuffer(ByteBufferSequence buffers); int position(); IpcBuffer position(int newPosition); byte getByte(int index); short getShort(int index); char getChar(int index); int getInt(int index); long getLong(int index); IpcBuffer setByte(int index, byte value); IpcBuffer setShort(int index, short value); IpcBuffer setChar(int index, char value); IpcBuffer setInt(int index, int value); IpcBuffer setLong(int index, long value); byte readByte(); short readShort(); char readChar(); int readInt(); long readLong(); IpcBuffer writeByte(byte value); IpcBuffer writeShort(short value); IpcBuffer writeChar(char value); IpcBuffer writeInt(int value); IpcBuffer writeLong(long value);  }### Answer:
@Test public void position_can_be_changed() { buffer = new IpcBuffer(new FixedByteBufferSequence(10)); assertThat(buffer.position(), is(0)); buffer.position(5); assertThat(buffer.position(), is(5)); }
@Test public void cannot_make_position_negative() { buffer = new IpcBuffer(new AllocatedByteBufferSequence(10)); thrown.expect(IllegalArgumentException.class); buffer.position(-1); }