private void addAppEngineSupport(Module module) { CloudSdkService sdkService = mock(CloudSdkService.class); CloudSdkJavaInternals mockSdkInternals = mock(CloudSdkJavaInternals.class); when(mockSdkInternals.getWebSchemeFile()).thenReturn(getWebSchemeFile()); CloudSdkJavaInternals.setInstance(mockSdkInternals); MutablePicoContainer applicationContainer = (MutablePicoContainer) ApplicationManager.getApplication().getPicoContainer(); applicationContainer.unregisterComponent(CloudSdkService.class.getName()); applicationContainer.registerComponentInstance(CloudSdkService.class.getName(), sdkService); FacetManager.getInstance(module) .addFacet(AppEngineStandardFacet.getFacetType(), "AppEngine", null); }
private void setupAppEngine(AppEngineStandardLibraryPanel libraryPanel, Library library) { CloudSdkService sdkService = mock(CloudSdkService.class); CloudSdkServiceManager sdkServiceManager = mock(CloudSdkServiceManager.class); when(sdkServiceManager.getCloudSdkService()).thenReturn(sdkService); CloudSdkJavaInternals mockSdkInternals = mock(CloudSdkJavaInternals.class); when(mockSdkInternals.getLibraries()).thenReturn(new File[] {}); CloudSdkJavaInternals.setInstance(mockSdkInternals); MavenRepositoryLibraryDownloader libraryDownloader = mock(MavenRepositoryLibraryDownloader.class); when(libraryDownloader.downloadLibrary( any(Module.class), any(AppEngineStandardMavenLibrary.class))) .thenReturn(library); MutablePicoContainer applicationContainer = (MutablePicoContainer) ApplicationManager.getApplication().getPicoContainer(); applicationContainer.unregisterComponent(CloudSdkService.class.getName()); applicationContainer.registerComponentInstance(CloudSdkService.class.getName(), sdkService); applicationContainer.unregisterComponent(MavenRepositoryLibraryDownloader.class.getName()); applicationContainer.registerComponentInstance( MavenRepositoryLibraryDownloader.class.getName(), libraryDownloader); FrameworkSupportInModuleConfigurable configurable = selectFramework(AppEngineStandardFrameworkType.ID); if (libraryPanel != null && configurable instanceof AppEngineSupportConfigurable) { ((AppEngineSupportConfigurable) configurable).setAppEngineStandardLibraryPanel(libraryPanel); } }