@Override
    public E remove() {
        final E e = poll();
        if (e == null) {
            throw new NoSuchElementException("Queue is empty");
        }
        return e;
    }
@Test
    public void testRemove() {
        queue.offer(23);

        assertEquals(23, (int) queue.remove());
        assertEquals(0, queue.size());
    }