From f3ee25543691927c71ff87da39bf22125c6c0fad Mon Sep 17 00:00:00 2001 From: Alexey Tsvetkov Date: Fri, 18 Mar 2016 14:46:16 +0300 Subject: [PATCH] Normalize output for windows tests --- .../kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt | 6 ++++-- .../kotlin/gradle/BuildLogParserParametrizedIT.kt | 10 ++++++---- .../kotlin/gradle/incremental/testLogsParsingUtil.kt | 3 ++- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt index bf9614a3843..95acbc641ce 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BaseGradleIT.kt @@ -1,6 +1,7 @@ package org.jetbrains.kotlin.gradle import com.google.common.io.Files +import com.intellij.openapi.util.io.FileUtil import org.gradle.api.logging.LogLevel import org.jetbrains.kotlin.gradle.util.createGradleCommand import org.jetbrains.kotlin.gradle.util.runProcess @@ -171,8 +172,9 @@ abstract class BaseGradleIT { } fun CompiledProject.assertContainFiles(expected: Iterable, actual: Iterable, messagePrefix: String = ""): CompiledProject { - val actualSet = actual.toSortedSet() - assertTrue(actualSet.containsAll(expected.toList()), messagePrefix + "expected files: ${expected.toSortedSet().joinToString()}\n !in actual files: ${actualSet.joinToString()}") + val expectedNormalized = expected.map(FileUtil::normalize).toSortedSet() + val actualNormalized = actual.map(FileUtil::normalize).toSortedSet() + assertTrue(actualNormalized.containsAll(expectedNormalized), messagePrefix + "expected files: ${expectedNormalized.joinToString()}\n !in actual files: ${actualNormalized.joinToString()}") return this } diff --git a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildLogParserParametrizedIT.kt b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildLogParserParametrizedIT.kt index c6c933fbd47..8d085f00d5d 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildLogParserParametrizedIT.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/BuildLogParserParametrizedIT.kt @@ -42,18 +42,18 @@ class BuildLogParserParametrizedIT : BaseGradleIT() { p.printlnSorted(stage.compileErrors) } - val actual = sb.toString() + val actualNormalized = sb.toString().normalizeLineEnds() val expectedFile = File(testDir, EXPECTED_PARSED_LOG_FILE_NAME) if (!expectedFile.isFile) { expectedFile.createNewFile() - expectedFile.writeText(actual) + expectedFile.writeText(actualNormalized) throw AssertionError("Expected file log did not exist, created: $expectedFile") } - val expectedContent = expectedFile.readText() - Assert.assertEquals("Parsed content was unexpected: ", actual, expectedContent) + val expectedNormalized = expectedFile.readText().normalizeLineEnds() + Assert.assertEquals("Parsed content was unexpected: ", expectedNormalized, actualNormalized) } companion object { @@ -77,3 +77,5 @@ private fun > Printer.printlnSorted(elements: Iterable) { popIndent() } +private fun String.normalizeLineEnds(): String = + lines().map { it.trimEnd() }.joinToString(separator="\n") \ No newline at end of file diff --git a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/incremental/testLogsParsingUtil.kt b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/incremental/testLogsParsingUtil.kt index 829fb0963f1..c1b82804335 100644 --- a/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/incremental/testLogsParsingUtil.kt +++ b/libraries/tools/kotlin-gradle-plugin/src/test/kotlin/org/jetbrains/kotlin/gradle/incremental/testLogsParsingUtil.kt @@ -1,5 +1,6 @@ package org.jetbrains.kotlin.gradle.incremental +import com.intellij.openapi.util.io.FileUtil import java.io.File class BuildStep( @@ -44,7 +45,7 @@ fun parseTestBuildLog(file: File): List { } if (readFiles) { - val path = line.trim() + val path = FileUtil.normalize(line.trim()) if (path.endsWith(".kt")) { compiledKotlinFiles.add(path)