maven: tests fixed which require maven3 for the import
authorVladislav.Soroka <Vladislav.Soroka@jetbrains.com>
Tue, 23 Sep 2014 08:47:16 +0000 (12:47 +0400)
committerVladislav.Soroka <Vladislav.Soroka@jetbrains.com>
Tue, 23 Sep 2014 08:49:15 +0000 (12:49 +0400)
(MiscImportingTest#testMavenExtensionsAreLoadedAndAfterProjectsReadIsCalled and MiscImportingTest#testExceptionsFromMavenExtensionsAreReportedAsProblems)

plugins/maven/src/main/java/org/jetbrains/idea/maven/server/MavenServerManager.java
plugins/maven/src/test/java/org/jetbrains/idea/maven/MavenImportingTestCase.java
plugins/maven/src/test/java/org/jetbrains/idea/maven/importing/MiscImportingTest.java
plugins/maven/src/test/java/org/jetbrains/idea/maven/server/MavenServerManagerHelper.java [deleted file]

index 7ef16bdcfc4efdedb4e4184667be82434846b87c..b63072340d5aa3f1458e0037ebed98902c407cd0 100644 (file)
@@ -310,11 +310,6 @@ public class MavenServerManager extends RemoteObjectWrapper<MavenServer> impleme
 
     String root = pluginFileOrDir.getParent();
 
-    boolean useMaven2 = this.useMaven2;
-    if (ApplicationManager.getApplication().isUnitTestMode()) {
-      useMaven2 = true;
-    }
-
     if (pluginFileOrDir.isDirectory()) {
       classpath.add(new File(root, "maven-server-api"));
 
index bc4e86aae4f3179407cbc917a24fc20ad4a4ec20..abf2d4b9c243e05589cdb1493f9fa96514c4df3c 100644 (file)
@@ -45,6 +45,7 @@ import org.jetbrains.idea.maven.execution.*;
 import org.jetbrains.idea.maven.model.MavenArtifact;
 import org.jetbrains.idea.maven.model.MavenExplicitProfiles;
 import org.jetbrains.idea.maven.project.*;
+import org.jetbrains.idea.maven.server.MavenServerManager;
 import org.jetbrains.jps.model.java.JavaResourceRootType;
 import org.jetbrains.jps.model.java.JavaSourceRootProperties;
 import org.jetbrains.jps.model.java.JavaSourceRootType;
@@ -382,7 +383,7 @@ public abstract class MavenImportingTestCase extends MavenTestCase {
   }
 
   protected void importProjectWithProfiles(String... profiles) {
-    doImportProjects(Collections.singletonList(myProjectPom), profiles);
+    doImportProjects(true, Collections.singletonList(myProjectPom), profiles);
   }
 
   protected void importProject(VirtualFile file) {
@@ -390,10 +391,24 @@ public abstract class MavenImportingTestCase extends MavenTestCase {
   }
 
   protected void importProjects(VirtualFile... files) {
-    doImportProjects(Arrays.asList(files));
+    doImportProjects(true, Arrays.asList(files));
   }
 
-  private void doImportProjects(final List<VirtualFile> files, String... profiles) {
+  protected void importProjectWithMaven3(@NonNls String xml) throws IOException {
+    createProjectPom(xml);
+    importProjectWithMaven3();
+  }
+
+  protected void importProjectWithMaven3() {
+    importProjectWithMaven3WithProfiles();
+  }
+
+  protected void importProjectWithMaven3WithProfiles(String... profiles) {
+    doImportProjects(false, Collections.singletonList(myProjectPom), profiles);
+  }
+
+  private void doImportProjects(boolean useMaven2, final List<VirtualFile> files, String... profiles) {
+    MavenServerManager.getInstance().setUseMaven2(useMaven2);
     initProjectsManager(false);
 
     readProjects(files, profiles);
index 0d99e3924207c75c5f3a131a3c18ff6ab61a5b33..adb045f8b561fc9b17735cc3ae4ccd02ab594f33 100644 (file)
 package org.jetbrains.idea.maven.importing;
 
 import com.intellij.ProjectTopics;
-import com.intellij.idea.Bombed;
 import com.intellij.openapi.module.ModifiableModuleModel;
 import com.intellij.openapi.module.Module;
 import com.intellij.openapi.module.ModuleManager;
 import com.intellij.openapi.roots.ModuleRootEvent;
 import com.intellij.openapi.roots.ModuleRootListener;
+import com.intellij.testFramework.PlatformTestUtil;
 import org.jetbrains.idea.maven.MavenCustomRepositoryHelper;
 import org.jetbrains.idea.maven.MavenImportingTestCase;
 import org.jetbrains.idea.maven.model.MavenProjectProblem;
 import org.jetbrains.idea.maven.project.MavenProject;
 import org.jetbrains.idea.maven.server.MavenServerManager;
-import org.jetbrains.idea.maven.server.MavenServerManagerHelper;
 
 import java.io.File;
-import java.util.Calendar;
 import java.util.List;
 
 public class MiscImportingTest extends MavenImportingTestCase {
@@ -277,12 +275,10 @@ public class MiscImportingTest extends MavenImportingTestCase {
     assertEquals(0, myProjectsTree.getRootProjects().get(0).getProblems().size());
   }
 
-  @Bombed(year = 2014, month = Calendar.JUNE, day = 25, user = "sergey.evdokimov")
   public void testMavenExtensionsAreLoadedAndAfterProjectsReadIsCalled() throws Exception {
     MavenCustomRepositoryHelper helper = new MavenCustomRepositoryHelper(myDir, "plugins");
     setRepositoryPath(helper.getTestDataPath("plugins"));
     getMavenGeneralSettings().setWorkOffline(true);
-    MavenServerManagerHelper.connectToMaven3Server();
 
     importProjectWithMaven3("<groupId>test</groupId>" +
                             "<artifactId>project</artifactId>" +
@@ -303,10 +299,9 @@ public class MiscImportingTest extends MavenImportingTestCase {
     MavenProject mavenProject = projects.get(0);
     assertEquals("Name for test:project generated by MyMavenExtension.", mavenProject.getFinalName());
 
-    assertEquals(myProjectPom.getPath().replace('\\', '/'), mavenProject.getProperties().getProperty("workspace-info"));
+    PlatformTestUtil.assertPathsEqual(myProjectPom.getPath(), mavenProject.getProperties().getProperty("workspace-info"));
   }
 
-  @Bombed(year = 2014, month = Calendar.JUNE, day = 25, user = "sergey.evdokimov")
   public void testExceptionsFromMavenExtensionsAreReportedAsProblems() throws Exception {
     MavenCustomRepositoryHelper helper = new MavenCustomRepositoryHelper(myDir, "plugins");
     setRepositoryPath(helper.getTestDataPath("plugins"));
@@ -376,14 +371,4 @@ public class MiscImportingTest extends MavenImportingTestCase {
     assertEquals(count, rootsChangedCount);
     assertEquals(rootsChangedCount, beforeRootsChangedCount);
   }
-
-  private void importProjectWithMaven3(String xml) throws Exception {
-    MavenServerManagerHelper.connectToMaven3Server();
-    try {
-      importProject(xml);
-    }
-    finally {
-      MavenServerManagerHelper.disconnectFromServer();
-    }
-  }
 }
diff --git a/plugins/maven/src/test/java/org/jetbrains/idea/maven/server/MavenServerManagerHelper.java b/plugins/maven/src/test/java/org/jetbrains/idea/maven/server/MavenServerManagerHelper.java
deleted file mode 100644 (file)
index 5aa8487..0000000
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * Copyright 2000-2014 JetBrains s.r.o.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-package org.jetbrains.idea.maven.server;
-
-import java.rmi.RemoteException;
-
-public class MavenServerManagerHelper {
-  /** {@link MavenServerManager#collectClassPathAndLibsFolder()} forces maven2 in test mode; we want maven3. */
-  public static MavenServer connectToMaven3Server() throws RemoteException {
-    MavenServerManager msm = MavenServerManager.getInstance(); // do this first, it won't work outside of unit test mode
-
-    msm.cleanup(); // in case we were previously connected to maven2
-
-    return msm.getOrCreateWrappee();
-  }
-
-  public static void disconnectFromServer() {
-    MavenServerManager msm = MavenServerManager.getInstance();
-    msm.cleanup();
-  }
-}