### Question:
KeyMappingProvider { @SuppressWarnings("unchecked") public <T> Class<? extends T> get(Class<T> klass) { final KeyMapping<T> keyMapping = componentMap.get(klass); if (keyMapping == null) { return klass; } return keyMapping.getConcreteClass(); } KeyMappingProvider(Iterable<KeyMapping> loader); @SuppressWarnings("unchecked") Class<? extends T> get(Class<T> klass); static KeyMappingProvider get();  }### Answer:
@Test public void getReal() { final KeyMappingProvider supplier = KeyMappingProvider.get(); assertEquals(Tree.class, supplier.get(Tree.class)); }
@Test public void getFakes() { final KeyMappingProvider supplier = new KeyMappingProvider(loader); assertEquals(FakeTree.class, supplier.get(Tree.class)); }