Turn off stability check for PerformanceTypingIndentationTest

This commit is contained in:
Vladimir Dolzhenko
2020-07-02 17:10:57 +02:00
parent 89d5c030dc
commit 543efffa5c
@@ -10,7 +10,7 @@ import com.intellij.openapi.actionSystem.IdeActions
import com.intellij.openapi.util.io.FileUtil import com.intellij.openapi.util.io.FileUtil
import com.intellij.testFramework.EditorTestUtil import com.intellij.testFramework.EditorTestUtil
import org.jetbrains.kotlin.formatter.FormatSettingsUtil import org.jetbrains.kotlin.formatter.FormatSettingsUtil
import org.jetbrains.kotlin.idea.test.KotlinLightPlatformCodeInsightTestCase import org.jetbrains.kotlin.idea.test.KotlinLightCodeInsightFixtureTestCase
import org.jetbrains.kotlin.test.KotlinTestUtils import org.jetbrains.kotlin.test.KotlinTestUtils
import java.io.File import java.io.File
@@ -18,19 +18,22 @@ import java.io.File
/** /**
* inspired by @see [org.jetbrains.kotlin.formatter.AbstractTypingIndentationTestBase] * inspired by @see [org.jetbrains.kotlin.formatter.AbstractTypingIndentationTestBase]
*/ */
abstract class AbstractPerformanceTypingIndentationTest : KotlinLightPlatformCodeInsightTestCase() { abstract class AbstractPerformanceTypingIndentationTest : KotlinLightCodeInsightFixtureTestCase() {
companion object { companion object {
@JvmStatic @JvmStatic
val stats: Stats = Stats("typing-indentation") val stats: Stats = Stats("typing-indentation")
} }
protected fun doPerfTest(filePath: String) { protected fun doPerfTest(unused: String) {
val testName = getTestName(false) val testName = getTestName(false)
myFixture.testDataPath = testDataPath
val testDataFile = testDataFile()
val filePath = testDataFile.path
val testFileName = filePath.substring(0, filePath.indexOf(".")) val testFileName = filePath.substring(0, filePath.indexOf("."))
val testFileExtension = filePath.substring(filePath.lastIndexOf(".")) val testFileExtension = filePath.substring(filePath.lastIndexOf("."))
val originFilePath = testFileName + testFileExtension
val afterFilePath = "$testFileName.after$testFileExtension" val afterFilePath = "$testFileName.after$testFileExtension"
val originalFileText = FileUtil.loadFile(File(originFilePath), true) val originalFileText = FileUtil.loadFile(testDataFile, true)
try { try {
val configurator = FormatSettingsUtil.createConfigurator(originalFileText, CodeStyle.getSettings(project)) val configurator = FormatSettingsUtil.createConfigurator(originalFileText, CodeStyle.getSettings(project))
@@ -39,13 +42,14 @@ abstract class AbstractPerformanceTypingIndentationTest : KotlinLightPlatformCod
performanceTest<Unit, Unit> { performanceTest<Unit, Unit> {
name(testName) name(testName)
stats(stats) stats(stats)
warmUpIterations(30) checkStability(false) // [VD] TODO: seems it could be some leakages here
iterations(50) warmUpIterations(20)
iterations(30)
setUp { setUp {
configureByFile(originFilePath) myFixture.configureByFile(testDataFile.name)
} }
test { test {
executeAction(IdeActions.ACTION_EDITOR_ENTER) myFixture.performEditorAction(IdeActions.ACTION_EDITOR_ENTER)
} }
tearDown { tearDown {
val actualTextWithCaret = StringBuilder(editor.document.text).insert( val actualTextWithCaret = StringBuilder(editor.document.text).insert(
@@ -53,6 +57,9 @@ abstract class AbstractPerformanceTypingIndentationTest : KotlinLightPlatformCod
EditorTestUtil.CARET_TAG EditorTestUtil.CARET_TAG
).toString() ).toString()
// to avoid VFS refresh
myFixture.performEditorAction(IdeActions.ACTION_UNDO)
KotlinTestUtils.assertEqualsToFile(File(afterFilePath), actualTextWithCaret) KotlinTestUtils.assertEqualsToFile(File(afterFilePath), actualTextWithCaret)
} }
} }
@@ -61,5 +68,4 @@ abstract class AbstractPerformanceTypingIndentationTest : KotlinLightPlatformCod
} }
} }
override fun getTestDataPath(): String = ""
} }