@Override
    public boolean remove(Object objectToRemove) {
        return remove(objectToRemove, objectToRemove.hashCode());
    }
@Test
    public void testRemove() {
        final OAHashSet<Integer> set = new OAHashSet<>(8);
        populateSet(set, 10);

        final boolean removed = set.remove(5);

        assertTrue(removed);
        assertFalse("Element 5 should not be contained", set.contains(5));
        for (int i = 0; i < 5; i++) {
            final boolean contained = set.contains(i);
            assertTrue("Element " + i + " should be contained", contained);
        }
        for (int i = 6; i < 10; i++) {
            final boolean contained = set.contains(i);
            assertTrue("Element " + i + " should be contained", contained);
        }
    }