From 544a250c7bbf65b1ba53d39e412254997dfb6c5f Mon Sep 17 00:00:00 2001 From: Vladimir Krivosheev Date: Mon, 10 Apr 2017 16:05:53 +0200 Subject: [PATCH] fix PyUniversalTestLegacyInterop --- .../ConfigurationRefactoringsTest.java | 22 +++++++++---- .../PyUniversalTestLegacyInterop.kt | 33 +++++++++++++++++-- 2 files changed, 46 insertions(+), 9 deletions(-) diff --git a/java/java-tests/testSrc/com/intellij/execution/ConfigurationRefactoringsTest.java b/java/java-tests/testSrc/com/intellij/execution/ConfigurationRefactoringsTest.java index 63ed69c6369a..521b2c478285 100644 --- a/java/java-tests/testSrc/com/intellij/execution/ConfigurationRefactoringsTest.java +++ b/java/java-tests/testSrc/com/intellij/execution/ConfigurationRefactoringsTest.java @@ -1,5 +1,5 @@ /* - * Copyright 2000-2014 JetBrains s.r.o. + * Copyright 2000-2017 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. @@ -18,6 +18,7 @@ package com.intellij.execution; import com.intellij.execution.application.ApplicationConfiguration; import com.intellij.execution.configurations.RunConfiguration; import com.intellij.execution.configurations.RuntimeConfigurationException; +import com.intellij.execution.impl.RunManagerImpl; import com.intellij.execution.impl.RunnerAndConfigurationSettingsImpl; import com.intellij.execution.junit.AllInPackageConfigurationProducer; import com.intellij.execution.junit.JUnitConfiguration; @@ -154,7 +155,8 @@ public class ConfigurationRefactoringsTest extends BaseConfigurationTestCase { checkConfigurationException("NotATest isn't test class", configuration); - RunManagerEx.getInstanceEx(myProject).setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(null, configuration, false)); + RunManagerImpl runManager = (RunManagerImpl)RunManagerEx.getInstanceEx(myProject); + runManager.setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(runManager, configuration, false)); rename(psiClass, "NotATest2"); JUnitConfiguration.Data data = configuration.getPersistentData(); assertEquals("NotATest2", data.getMainClassName()); @@ -230,15 +232,20 @@ public class ConfigurationRefactoringsTest extends BaseConfigurationTestCase { @Override protected void tearDown() throws Exception { - mySource.tearDown(); - mySource = null; - super.tearDown(); + try { + mySource.tearDown(); + mySource = null; + } + finally { + super.tearDown(); + } } @Override protected T createConfiguration(@NotNull PsiElement psiClass, @NotNull MapDataContext dataContext) { T configuration = super.createConfiguration(psiClass, dataContext); - RunManagerEx.getInstanceEx(myProject).setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(null, configuration, false)); + RunManagerImpl manager = (RunManagerImpl)RunManagerEx.getInstanceEx(myProject); + manager.setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(manager, configuration, false)); return configuration; } @@ -247,7 +254,8 @@ public class ConfigurationRefactoringsTest extends BaseConfigurationTestCase { @NotNull Class producerClass, @NotNull MapDataContext dataContext) { final JUnitConfiguration configuration = super.createJUnitConfiguration(psiElement, producerClass, dataContext); - RunManagerEx.getInstanceEx(myProject).setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(null, configuration, false)); + RunManagerImpl manager = (RunManagerImpl)RunManagerEx.getInstanceEx(myProject); + manager.setTemporaryConfiguration(new RunnerAndConfigurationSettingsImpl(manager, configuration)); return configuration; } } diff --git a/python/src/com/jetbrains/python/testing/universalTests/PyUniversalTestLegacyInterop.kt b/python/src/com/jetbrains/python/testing/universalTests/PyUniversalTestLegacyInterop.kt index 8fd13cda8462..196e58aa3a41 100644 --- a/python/src/com/jetbrains/python/testing/universalTests/PyUniversalTestLegacyInterop.kt +++ b/python/src/com/jetbrains/python/testing/universalTests/PyUniversalTestLegacyInterop.kt @@ -1,7 +1,23 @@ +/* + * Copyright 2000-2017 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 com.jetbrains.python.testing.universalTests import com.intellij.execution.RunManager import com.intellij.execution.actions.RunConfigurationProducer +import com.intellij.execution.configurations.RunConfiguration import com.intellij.openapi.application.ApplicationManager import com.intellij.openapi.diagnostic.Logger import com.intellij.openapi.extensions.Extensions @@ -155,7 +171,14 @@ class PyUniversalTestLegacyConfigurationAdapter