Prioritize failure in expect file over stub validation problem in tests

This commit is contained in:
Nikolay Krasko
2018-11-02 15:23:17 +03:00
parent 6dcc3374fe
commit 6c67cb3d7f
@@ -34,6 +34,7 @@ import org.jetbrains.kotlin.idea.test.*
import org.jetbrains.kotlin.psi.KtFile
import org.jetbrains.kotlin.test.InTextDirectivesUtils
import org.junit.Assert
import org.junit.ComparisonFailure
import java.io.File
import java.io.IOException
@@ -157,7 +158,14 @@ abstract class AbstractQuickFixTest : KotlinLightCodeInsightFixtureTestCase(), Q
fail("Action with text '" + actionHint.expectedText + "' not found\nAvailable actions: " +
myFixture.availableIntentions.joinToString(prefix = "[", postfix = "]") { it.text })
}
myFixture.launchAction(intention!!)
val stubComparisonFailure: ComparisonFailure? = try {
myFixture.launchAction(intention!!)
null
} catch (comparisonFailure: ComparisonFailure) {
comparisonFailure
}
UIUtil.dispatchAllInvocationEvents()
UIUtil.dispatchAllInvocationEvents()
@@ -167,6 +175,10 @@ abstract class AbstractQuickFixTest : KotlinLightCodeInsightFixtureTestCase(), Q
}
myFixture.checkResultByFile(File(fileName).name + ".after")
if (stubComparisonFailure != null) {
throw stubComparisonFailure
}
}
else {
assertNull("Action with text ${actionHint.expectedText} is present, but should not", intention)