### Question:
LoggingSupplier implements RbacMappingSupplier { @Override public Map<String, Set<String>> get() { return supplier.get(); } LoggingSupplier(final Supplier<Map<String, Set<String>>> supplier); @Override Map<String, Set<String>> get();  }### Answer:
@Test public void testDefaultBehaviourEmptyResult() { final Map<String, Set<String>> expectedResult = new HashMap<>(); final RbacMappingSupplier supplier = () -> expectedResult; final Map<String, Set<String>> result = new LoggingSupplier(supplier).get(); assertThat(result, is(expectedResult)); }
@Test public void testDefaultBehaviourNullResult() { final RbacMappingSupplier supplier = () -> null; final Map<String, Set<String>> result = new LoggingSupplier(supplier).get(); assertThat(result, is(nullValue())); }
@Test public void testDefaultBehaviour() { final Map<String, Set<String>> expectedResult = new HashMap<>(); expectedResult.put("key", new HashSet<>(asList("value1", "value2"))); final RbacMappingSupplier supplier = () -> expectedResult; final Map<String, Set<String>> result = new LoggingSupplier(supplier).get(); assertThat(result, is(expectedResult)); }