From 1e123fd6dad09d782f8670cfa8fa2a2aa2bf64a5 Mon Sep 17 00:00:00 2001 From: nik Date: Wed, 14 Mar 2018 15:17:40 +0300 Subject: [PATCH] testing scripts: report error if run configuration uses a fork mode --- .../impl/JUnitRunConfigurationProperties.groovy | 5 +++++ .../runConfigurations/test_method_fork_mode.xml | 16 ++++++++++++++++ .../build/JUnitRunConfigurationPropertiesTest.kt | 6 ++++++ 3 files changed, 27 insertions(+) create mode 100644 platform/build-scripts/tests/testResources/org/jetbrains/intellij/build/runConfigurations/test_method_fork_mode.xml diff --git a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/JUnitRunConfigurationProperties.groovy b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/JUnitRunConfigurationProperties.groovy index dd2226cd76ab..cae8e15ccc26 100644 --- a/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/JUnitRunConfigurationProperties.groovy +++ b/platform/build-scripts/groovy/org/jetbrains/intellij/build/impl/JUnitRunConfigurationProperties.groovy @@ -59,6 +59,11 @@ class JUnitRunConfigurationProperties { testClassPatterns = [] } + String forkMode = first(configuration.fork_mode)?.@value + if (forkMode != null && forkMode != "none") { + messages.error("Cannot run $file.name configuration: fork mode '$forkMode' is not supported") + } + List requiredArtifacts = first(configuration.method)?.option?. find { it.@name == "BuildArtifacts" && it.@enabled == "true" }?. diff --git a/platform/build-scripts/tests/testResources/org/jetbrains/intellij/build/runConfigurations/test_method_fork_mode.xml b/platform/build-scripts/tests/testResources/org/jetbrains/intellij/build/runConfigurations/test_method_fork_mode.xml new file mode 100644 index 000000000000..7f76a84608ca --- /dev/null +++ b/platform/build-scripts/tests/testResources/org/jetbrains/intellij/build/runConfigurations/test_method_fork_mode.xml @@ -0,0 +1,16 @@ + + + + + + + \ No newline at end of file diff --git a/platform/build-scripts/tests/testSrc/org/jetbrains/intellij/build/JUnitRunConfigurationPropertiesTest.kt b/platform/build-scripts/tests/testSrc/org/jetbrains/intellij/build/JUnitRunConfigurationPropertiesTest.kt index cafde3de0795..c296348aeb19 100644 --- a/platform/build-scripts/tests/testSrc/org/jetbrains/intellij/build/JUnitRunConfigurationPropertiesTest.kt +++ b/platform/build-scripts/tests/testSrc/org/jetbrains/intellij/build/JUnitRunConfigurationPropertiesTest.kt @@ -4,6 +4,7 @@ package org.jetbrains.intellij.build import com.intellij.util.io.URLUtil +import junit.framework.AssertionFailedError import org.jetbrains.intellij.build.impl.JUnitRunConfigurationProperties import org.junit.Assert.assertEquals import org.junit.Test @@ -40,6 +41,11 @@ class JUnitRunConfigurationPropertiesTest { assertEquals(emptyList(), properties.requiredArtifacts) } + @Test(expected = AssertionFailedError::class) + fun `load test with method fork mode`() { + loadRunConfiguration("test_method_fork_mode.xml") + } + private fun loadRunConfiguration(fileName: String): JUnitRunConfigurationProperties { val url = JUnitRunConfigurationPropertiesTest::class.java.getResource("runConfigurations/$fileName") return JUnitRunConfigurationProperties.loadRunConfiguration(URLUtil.urlToFile(url), MockBuildMessages())