Stop auto-generating expected test data on TeamCity in assertEqualsToFile
This commit is contained in:
committed by
teamcityserver
parent
edaf925b19
commit
ca4410aa53
+9
-3
@@ -15,13 +15,19 @@ import java.io.IOException
|
||||
import org.junit.jupiter.api.Assertions as JUnit5PlatformAssertions
|
||||
|
||||
object JUnit5Assertions : AssertionsService() {
|
||||
private val isTeamCityBuild: Boolean = System.getenv("TEAMCITY_VERSION") != null
|
||||
|
||||
override fun assertEqualsToFile(expectedFile: File, actual: String, sanitizer: (String) -> String, message: () -> String) {
|
||||
try {
|
||||
val actualText = actual.trim { it <= ' ' }.convertLineSeparators().trimTrailingWhitespacesAndAddNewlineAtEOF()
|
||||
if (!expectedFile.exists()) {
|
||||
expectedFile.parentFile.mkdirs()
|
||||
expectedFile.writeText(actualText)
|
||||
org.junit.jupiter.api.fail("Expected data file did not exist. Generating: $expectedFile")
|
||||
if (isTeamCityBuild) {
|
||||
org.junit.jupiter.api.fail("Expected data file did not exist `$expectedFile`")
|
||||
} else {
|
||||
expectedFile.parentFile.mkdirs()
|
||||
expectedFile.writeText(actualText)
|
||||
org.junit.jupiter.api.fail("Expected data file did not exist. Generating: $expectedFile")
|
||||
}
|
||||
}
|
||||
val expected = expectedFile.readText().convertLineSeparators()
|
||||
val expectedText = expected.trim { it <= ' ' }.trimTrailingWhitespacesAndAddNewlineAtEOF()
|
||||
|
||||
@@ -25,7 +25,6 @@ import org.jetbrains.annotations.Nullable;
|
||||
import org.jetbrains.kotlin.analyzer.AnalysisResult;
|
||||
import org.jetbrains.kotlin.builtins.DefaultBuiltIns;
|
||||
import org.jetbrains.kotlin.builtins.KotlinBuiltIns;
|
||||
import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettings;
|
||||
import org.jetbrains.kotlin.checkers.CompilerTestLanguageVersionSettingsKt;
|
||||
import org.jetbrains.kotlin.cli.common.CLIConfigurationKeys;
|
||||
import org.jetbrains.kotlin.cli.common.config.ContentRootsKt;
|
||||
@@ -37,7 +36,9 @@ import org.jetbrains.kotlin.cli.jvm.compiler.EnvironmentConfigFiles;
|
||||
import org.jetbrains.kotlin.cli.jvm.compiler.KotlinCoreEnvironment;
|
||||
import org.jetbrains.kotlin.cli.jvm.config.JvmContentRootsKt;
|
||||
import org.jetbrains.kotlin.codegen.forTestCompile.ForTestCompileRuntime;
|
||||
import org.jetbrains.kotlin.config.*;
|
||||
import org.jetbrains.kotlin.config.CommonConfigurationKeys;
|
||||
import org.jetbrains.kotlin.config.CompilerConfiguration;
|
||||
import org.jetbrains.kotlin.config.JVMConfigurationKeys;
|
||||
import org.jetbrains.kotlin.descriptors.impl.ModuleDescriptorImpl;
|
||||
import org.jetbrains.kotlin.jvm.compiler.LoadDescriptorUtil;
|
||||
import org.jetbrains.kotlin.lexer.KtTokens;
|
||||
@@ -46,6 +47,7 @@ import org.jetbrains.kotlin.psi.KtFile;
|
||||
import org.jetbrains.kotlin.psi.KtPsiFactoryKt;
|
||||
import org.jetbrains.kotlin.resolve.lazy.JvmResolveUtil;
|
||||
import org.jetbrains.kotlin.storage.LockBasedStorageManager;
|
||||
import org.jetbrains.kotlin.test.testFramework.KtUsefulTestCase;
|
||||
import org.jetbrains.kotlin.test.util.JUnit4Assertions;
|
||||
import org.jetbrains.kotlin.test.util.KtTestUtil;
|
||||
import org.jetbrains.kotlin.test.util.StringUtilsKt;
|
||||
@@ -61,7 +63,8 @@ import java.util.*;
|
||||
import java.util.regex.Matcher;
|
||||
import java.util.regex.Pattern;
|
||||
|
||||
import static org.jetbrains.kotlin.test.InTextDirectivesUtils.*;
|
||||
import static org.jetbrains.kotlin.test.InTextDirectivesUtils.IGNORE_BACKEND_DIRECTIVE_PREFIX;
|
||||
import static org.jetbrains.kotlin.test.InTextDirectivesUtils.isIgnoredTarget;
|
||||
|
||||
public class KotlinTestUtils {
|
||||
public static String TEST_MODULE_NAME = "test-module";
|
||||
@@ -257,8 +260,12 @@ public class KotlinTestUtils {
|
||||
String actualText = StringUtilsKt.trimTrailingWhitespacesAndAddNewlineAtEOF(StringUtil.convertLineSeparators(actual.trim()));
|
||||
|
||||
if (!expectedFile.exists()) {
|
||||
FileUtil.writeToFile(expectedFile, actualText);
|
||||
Assert.fail("Expected data file did not exist. Generating: " + expectedFile);
|
||||
if (KtUsefulTestCase.IS_UNDER_TEAMCITY) {
|
||||
Assert.fail("Expected data file " + expectedFile + " did not exist");
|
||||
} else {
|
||||
FileUtil.writeToFile(expectedFile, actualText);
|
||||
Assert.fail("Expected data file did not exist. Generating: " + expectedFile);
|
||||
}
|
||||
}
|
||||
String expected = FileUtil.loadFile(expectedFile, CharsetToolkit.UTF8, true);
|
||||
|
||||
|
||||
Reference in New Issue
Block a user