Selector { public Set<P> selectMatchingNone() { return select(p -> predicates.stream().noneMatch(predicate -> predicate.test(p))); } private  Selector(T configuration); static Selector<P, T> create(T configuration); Selector<P, T> friends(); Selector<P, T> enemies(); Selector<P, T> exactValue(double value); Selector<P, T> association(Association association); Set<P> selectMatchingAll(); Set<P> selectMatchingNone(); Set<P> selectMatchingAny();  }
@Test @DisplayName("None") void selectMatchingNone() { assertTrue(setHasNames( Selector.create(configuration).enemies().friends().selectMatchingNone(), "Alice")); }