@Override
    public Headers remove(String key) {
        checkKey(key);
        if (!isEmpty()) {
            Iterator<Header> iterator = iterator();
            while (iterator.hasNext()) {
                if (iterator.next().key().equals(key)) {
                    iterator.remove();
                }
            }
        }
        return this;
    }
@Test
    public void shouldRemoveAllHeadersWithSameKeyWhenEmpty() {
        headers.remove(key);
        assertNoHeaderWithKey(key);
    }