@Override
    public void accept(T t) {

        if (isNull(t) && permitsNull) {
            return;
        }

        if (isNull(t) && !permitsNull) {
            throw new IllegalArgumentException("Null is an illegal input");
        }

        if (hasValueToMatch()) {
            checkArgument(t.equals(mustMatchThisValue));
        } else {
            mustMatchThisValue = t;
        }
    }
@Test
    public void rejectsNullWhenConfigured() {

        SingleValueVerifier<String> svv = new SingleValueVerifier<>();
        assertThrows(IllegalArgumentException.class, () -> svv.accept(null));
    }