### Question:
DynamicCamera extends SimpleCamera { @Override public double zoom(RouteInformation routeInformation) { if (isShutdown) { return DEFAULT_ZOOM; } if (validLocationAndProgress(routeInformation) && shouldUpdateZoom(routeInformation)) { return createZoom(routeInformation); } else if (routeInformation.route() != null) { return super.zoom(routeInformation); } return mapboxMap.getCameraPosition().zoom; } DynamicCamera(@NonNull MapboxMap mapboxMap); @Override Point target(RouteInformation routeInformation); @Override double tilt(RouteInformation routeInformation); @Override double zoom(RouteInformation routeInformation); void forceResetZoomLevel(); void clearMap();  }### Answer:
@Test public void onInformationFromRoute_engineCreatesCorrectZoom() throws Exception { DynamicCamera cameraEngine = buildDynamicCamera(); RouteInformation routeInformation = RouteInformation.create(buildDirectionsRoute(), null, null); double zoom = cameraEngine.zoom(routeInformation); assertEquals(15d, zoom); }