@Test
public void testMultiChannelNoBarriers() {

	try {
		BufferOrEvent[] sequence = { createBuffer(2), createBuffer(2), createBuffer(0),
				createBuffer(1), createBuffer(0), createBuffer(3),
				createBuffer(1), createBuffer(1), createBuffer(2)
		};
		MockInputGate gate = new MockInputGate(PAGE_SIZE, 4, Arrays.asList(sequence));
		BarrierTracker tracker = new BarrierTracker(gate);
		for (BufferOrEvent boe : sequence) {
			assertEquals(boe, tracker.getNextNonBlocked());
		}
		assertNull(tracker.getNextNonBlocked());
		assertNull(tracker.getNextNonBlocked());
	}
	catch (Exception e) {
		e.printStackTrace();
		fail(e.getMessage());
	}
}