DockerCloudSettingsController extends BaseController { @Nullable @Override protected ModelAndView doHandle(@Nonnull HttpServletRequest request, @Nonnull HttpServletResponse response) throws Exception { ModelAndView mv = new ModelAndView(jspPath); Map<String, Object> model = mv.getModel(); model.put("pluginResPath", pluginDescriptor.getPluginResourcesPath()); model.put("debugEnabled", DockerCloudUtils.isDebugEnabled()); boolean defaultLocalInstanceAvailable; String defaultLocalInstanceParam; URI defaultLocalInstanceURI; boolean windowsHost; if (windowsHost = DockerCloudUtils.isWindowsHost()) { defaultLocalInstanceAvailable = DockerCloudUtils.isDefaultDockerNamedPipeAvailable(); defaultLocalInstanceParam = DockerCloudUtils.USE_DEFAULT_WIN_NAMED_PIPE_PARAM; defaultLocalInstanceURI = DockerCloudUtils.DOCKER_DEFAULT_NAMED_PIPE_URI; } else { defaultLocalInstanceAvailable = DockerCloudUtils.isDefaultDockerSocketAvailable(); defaultLocalInstanceParam = DockerCloudUtils.USE_DEFAULT_UNIX_SOCKET_PARAM; defaultLocalInstanceURI = DockerCloudUtils.DOCKER_DEFAULT_SOCKET_URI; } model.put("defaultLocalInstanceAvailable", defaultLocalInstanceAvailable); model.put("defaultLocalInstanceParam", defaultLocalInstanceParam); model.put("defaultLocalInstanceURI", defaultLocalInstanceURI); model.put("windowsHost", windowsHost); model.put("webSocketEndpointsAvailable", wsDeploymentStatusProvider.getDeploymentStatus() == SUCCESS); model.put("resources", resources); return mv; } DockerCloudSettingsController(@Nonnull WebSocketDeploymentStatusProvider wsDeploymentStatusProvider,
            @Nonnull SBuildServer server,
            @Nonnull PluginDescriptor pluginDescriptor,
            @Nonnull WebControllerManager manager,
            @Nonnull Resources resources);   }
@Test public void normalOperation() throws Exception { DockerCloudSettingsController ctrl = createController(); ctrl.doHandle(new TestHttpServletRequest(), new TestHttpServletResponse()); }