FIR TEST: perform more accurate check on file identity

This commit is contained in:
Mikhail Glukhikh
2021-01-29 14:59:43 +03:00
parent 338aad98eb
commit 6747084fe2
3 changed files with 8 additions and 4 deletions
@@ -31,8 +31,12 @@ class FirTestDataConsistencyHandler(testServices: TestServices) : AfterAnalysisC
runFirTestAndGeneratedTestData(testData, firTestData)
return
}
val originalFileContent = clearTextFromDiagnosticMarkup(testData.readText())
val firFileContent = clearTextFromDiagnosticMarkup(firTestData.readText())
var originalFileContent = clearTextFromDiagnosticMarkup(testData.readText()).trim()
var firFileContent = clearTextFromDiagnosticMarkup(firTestData.readText()).trim()
if (System.lineSeparator() != "\n") {
originalFileContent = originalFileContent.replace("\r\n", "\n")
firFileContent = firFileContent.replace("\r\n", "\n")
}
testServices.assertions.assertEquals(originalFileContent, firFileContent) {
"Original and fir test data aren't identical. " +
"Please, add changes from ${testData.name} to ${firTestData.name}"
@@ -31,7 +31,7 @@ class FirIdenticalChecker(testServices: TestServices) : AfterAnalysisChecker(tes
if (testDataFile.isFirTestData) {
val firFile = helper.getFirFileToCompare(testDataFile)
val classicFile = helper.getClassicFileToCompare(testDataFile)
if (helper.contentsAreEquals(classicFile, firFile)) {
if (helper.contentsAreEquals(classicFile, firFile, trimLines = true)) {
helper.deleteFirFile(testDataFile)
helper.addDirectiveToClassicFileAndAssert(classicFile)
}
@@ -28,7 +28,7 @@ abstract class FirIdenticalCheckerHelper(private val testServices: TestServices)
private fun File.readContent(trimLines: Boolean): String {
return if (trimLines) {
this.readLines().map { it.trimEnd() }.joinToString("\n").trimEnd()
this.readLines().joinToString("\n") { it.trimEnd() }.trimEnd()
} else {
this.readText()
}