Operations { public static <T extends IPerson> Set<T> getInFriendlinessRange(Configuration<T> configuration, double rangeLower, double rangeUpper) { return filterMatchingPersons(configuration, t -> t.getValue() >= rangeLower && t.getValue() <= rangeUpper); }  static Set<T> getByFriendliness(Configuration<T> configuration, double value); static Set<T> getByAssociation(Configuration<T> configuration, Association association); static Set<T> getInFriendlinessRange(Configuration<T> configuration, double rangeLower, double rangeUpper); static Set<T> filterMatchingPersons(Configuration<T> configuration, Predicate<T> predicate); static Configuration<T> introduceNewSafe(Configuration<T> configuration, T person); static Configuration<T> halveFriendlinessValues(Configuration<T> configuration); static Configuration<T> multiplyFriendlinessValues(Configuration<T> configuration, double multiplier); static Configuration<T> multiplyFriendlinessValuesInRange(Configuration<T> configuration, double multiplier, double rangeLower, double rangeUpper);  }
@Test @DisplayName("Get by range") void getInFriendlinessRange() { assertEquals(2, Operations.getInFriendlinessRange(configuration, 0, 2).size()); }