Use test path relative to testDataPath in fixture.configureByFile to be complaint with 193, part 2

This commit is contained in:
Vladimir Dolzhenko
2019-09-29 10:43:38 +02:00
parent d7a2de59ac
commit 3b563eaca1
16 changed files with 119 additions and 121 deletions
@@ -12,7 +12,6 @@ import com.intellij.psi.PsiFile
import org.jetbrains.kotlin.idea.AbstractCopyPasteTest
import org.jetbrains.kotlin.idea.perf.Stats.Companion.WARM_UP
import org.jetbrains.kotlin.idea.test.KotlinWithJdkAndRuntimeLightProjectDescriptor
import org.jetbrains.kotlin.idea.test.PluginTestCaseBase
import org.jetbrains.kotlin.test.KotlinTestUtils
import java.io.File
@@ -22,8 +21,6 @@ import java.io.File
abstract class AbstractPerformanceLiteralKotlinToKotlinCopyPasteTest : AbstractCopyPasteTest() {
companion object {
val BASE_PATH = PluginTestCaseBase.getTestDataPathBase() + "/copyPaste/literal"
@JvmStatic
var warmedUp: Boolean = false
@@ -36,8 +33,6 @@ abstract class AbstractPerformanceLiteralKotlinToKotlinCopyPasteTest : AbstractC
}
}
override fun getTestDataPath() = BASE_PATH
override fun getProjectDescriptor() = KotlinWithJdkAndRuntimeLightProjectDescriptor.INSTANCE
override fun setUp() {
@@ -83,14 +78,17 @@ abstract class AbstractPerformanceLiteralKotlinToKotlinCopyPasteTest : AbstractC
)
}
fun doPerfTest(path: String) {
fun doPerfTest(unused: String) {
val testName = getTestName(false)
val fileName = fileName()
val testPath = testPath()
val expectedPath = File(testPath.replace(".kt", ".expected.kt"))
val fileEditorManager = FileEditorManagerEx.getInstance(project)
stats.perfTest<Array<PsiFile>, Unit>(
testName = testName,
setUp = {
it.setUpValue = myFixture.configureByFiles("$testName.kt", "$testName.to.kt")
it.setUpValue = myFixture.configureByFiles(fileName, fileName.replace(".kt", ".to.kt"))
},
test = {
fileEditorManager.setSelectedEditor(it.setUpValue!![0].virtualFile, "")
@@ -100,7 +98,7 @@ abstract class AbstractPerformanceLiteralKotlinToKotlinCopyPasteTest : AbstractC
myFixture.performEditorAction(IdeActions.ACTION_PASTE)
},
tearDown = {
KotlinTestUtils.assertEqualsToFile(File(path.replace(".kt", ".expected.kt")), it.setUpValue!![1].text)
KotlinTestUtils.assertEqualsToFile(expectedPath, it.setUpValue!![1].text)
// to avoid VFS refresh
myFixture.performEditorAction(IdeActions.ACTION_UNDO)
@@ -5,15 +5,21 @@
package org.jetbrains.kotlin.idea.testFramework
import com.intellij.ide.startup.impl.StartupManagerImpl
import com.intellij.lang.LanguageAnnotators
import com.intellij.lang.LanguageExtensionPoint
import com.intellij.lang.annotation.Annotator
import com.intellij.openapi.Disposable
import com.intellij.openapi.editor.Document
import com.intellij.openapi.fileEditor.FileDocumentManager
import com.intellij.openapi.fileEditor.FileEditorManager
import com.intellij.openapi.project.Project
import com.intellij.openapi.project.ex.ProjectManagerEx
import com.intellij.openapi.startup.StartupManager
import com.intellij.psi.PsiDocumentManager
import com.intellij.psi.impl.PsiDocumentManagerBase
import com.intellij.testFramework.EdtTestUtil
import com.intellij.testFramework.PlatformTestUtil
import com.intellij.testFramework.runInEdtAndWait
import com.intellij.util.ThrowableRunnable
import com.intellij.util.ui.UIUtil
@@ -55,13 +61,23 @@ fun dispatchAllInvocationEvents() {
}
}
fun loadProjectWithName(path: String, name: String): Project? =
ProjectManagerEx.getInstanceEx().loadProject(name, path)
fun closeProject(project: Project) {
dispatchAllInvocationEvents()
val projectManagerEx = ProjectManagerEx.getInstanceEx()
projectManagerEx.closeAndDispose(project)
}
// BUNCH: 183
fun runStartupActivities(project: Project) {
with(StartupManager.getInstance(project) as StartupManagerImpl) {
scheduleInitialVfsRefresh()
runStartupActivities()
runPostStartupActivities()
}
}
fun waitForAllEditorsFinallyLoaded(project: Project) {
// 183 does not have this public api
}