### Question:
LocalBufferPool implements BufferProvider { @Override public Buffer requestBuffer(int minBufferSize) throws IOException { try { return requestBuffer(minBufferSize, false); } catch (InterruptedException e) { throw new IOException("Unexpected InterruptedException while non-blocking buffer request."); } } LocalBufferPool(GlobalBufferPool globalBufferPool, int numDesignatedBuffers); @Override Buffer requestBuffer(int minBufferSize); @Override Buffer requestBufferBlocking(int minBufferSize); @Override int getBufferSize(); @Override void reportAsynchronousEvent(); @Override BufferAvailabilityRegistration registerBufferAvailabilityListener(BufferAvailabilityListener listener); void setNumDesignatedBuffers(int numDesignatedBuffers); int numAvailableBuffers(); int numRequestedBuffers(); int numDesignatedBuffers(); void destroy();  }### Answer:
@Test(expected = IllegalArgumentException.class) public void testSingleConsumerNonBlockingRequestTooLarge() throws IOException { final LocalBufferPool bufferPool = new LocalBufferPool(GLOBAL_BUFFER_POOL, NUM_BUFFERS); bufferPool.requestBuffer(BUFFER_SIZE * 2); }