BasicEntityDriverManager implements EntityDriverManager { @Override public <D extends EntityDriver> D build(DriverDependentEntity<D> entity, Location location){ if (registry.hasDriver(entity, location)) { return registry.build(entity, location); } else { return reflective.build(entity, location); } } BasicEntityDriverManager(); @Beta ReflectiveEntityDriverFactory getReflectiveDriverFactory(); @Override void registerDriver(Class<D> driverInterface, Class<? extends Location> locationClazz, Class<? extends D> driverClazz); @Override D build(DriverDependentEntity<D> entity, Location location);  }
@Test public void testFallsBackToReflectiveDriver() throws Exception { assertTrue(manager.build(entity, sshLocation) instanceof MySshDriver); }