mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-09-27 10:03:11 +07:00
cleanup
This commit is contained in:
@@ -10,7 +10,6 @@ import com.intellij.openapi.components.stateStore
|
||||
import com.intellij.openapi.module.ModifiableModuleModel
|
||||
import com.intellij.openapi.module.Module
|
||||
import com.intellij.openapi.module.ModuleManager
|
||||
import com.intellij.openapi.module.ModuleTypeId
|
||||
import com.intellij.openapi.project.ModuleAdapter
|
||||
import com.intellij.openapi.project.Project
|
||||
import com.intellij.openapi.util.io.systemIndependentPath
|
||||
@@ -24,12 +23,13 @@ import org.junit.Rule
|
||||
import org.junit.Test
|
||||
import org.junit.rules.ExternalResource
|
||||
import java.io.File
|
||||
import java.nio.file.Paths
|
||||
import java.util.UUID
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
class ModuleStoreRenameTest {
|
||||
companion object {
|
||||
ClassRule val projectRule = ProjectRule()
|
||||
@ClassRule val projectRule = ProjectRule()
|
||||
}
|
||||
|
||||
var module: Module by Delegates.notNull()
|
||||
@@ -44,8 +44,15 @@ class ModuleStoreRenameTest {
|
||||
object : ExternalResource() {
|
||||
override fun before() {
|
||||
runInEdtAndWait {
|
||||
module = runWriteAction { ModuleManager.getInstance(projectRule.project).newModule(tempDirManager.newPath().resolve("m.iml").systemIndependentPath, ModuleTypeId.JAVA_MODULE) }
|
||||
module = projectRule.createModule(tempDirManager.newPath().resolve("m.iml"))
|
||||
}
|
||||
|
||||
module.getMessageBus().connect().subscribe(ProjectTopics.MODULES, object : ModuleAdapter() {
|
||||
override fun modulesRenamed(project: Project, modules: MutableList<Module>, oldNameProvider: Function<Module, String>) {
|
||||
assertThat(modules).containsOnly(module)
|
||||
oldModuleNames.add(oldNameProvider.`fun`(module))
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
// should be invoked after project tearDown
|
||||
@@ -58,22 +65,12 @@ class ModuleStoreRenameTest {
|
||||
}
|
||||
}
|
||||
},
|
||||
DisposeModulesRule(projectRule),
|
||||
object : ExternalResource() {
|
||||
override fun before() {
|
||||
module.getMessageBus().connect().subscribe(ProjectTopics.MODULES, object : ModuleAdapter() {
|
||||
override fun modulesRenamed(project: Project, modules: MutableList<Module>, oldNameProvider: Function<Module, String>) {
|
||||
assertThat(modules).containsOnly(module)
|
||||
oldModuleNames.add(oldNameProvider.`fun`(module))
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
DisposeModulesRule(projectRule)
|
||||
)
|
||||
|
||||
public Rule fun getChain(): RuleChain = ruleChain
|
||||
|
||||
fun Module.change(task: ModifiableModuleModel.() -> Unit) {
|
||||
fun changeModule(task: ModifiableModuleModel.() -> Unit) {
|
||||
runInEdtAndWait {
|
||||
val model = ModuleManager.getInstance(projectRule.project).getModifiableModel()
|
||||
runWriteAction {
|
||||
@@ -92,7 +89,7 @@ class ModuleStoreRenameTest {
|
||||
|
||||
val oldName = module.getName()
|
||||
val newName = "foo"
|
||||
module.change { renameModule(module, newName) }
|
||||
changeModule { renameModule(module, newName) }
|
||||
assertRename(newName, oldFile)
|
||||
assertThat(oldModuleNames).containsOnly(oldName)
|
||||
}
|
||||
@@ -135,9 +132,9 @@ class ModuleStoreRenameTest {
|
||||
val parentVirtualDir = storage.getVirtualFile()!!.getParent()
|
||||
runInEdtAndWait { runWriteAction { parentVirtualDir.rename(null, UUID.randomUUID().toString()) } }
|
||||
|
||||
val newFile = File(parentVirtualDir.getPath(), module.getName() + ModuleFileType.DOT_DEFAULT_EXTENSION)
|
||||
val newFile = Paths.get(parentVirtualDir.getPath(), "${module.getName()}${ModuleFileType.DOT_DEFAULT_EXTENSION}")
|
||||
try {
|
||||
assertThat(newFile).isFile()
|
||||
assertThat(newFile).isRegularFile()
|
||||
assertRename(module.getName(), oldFile)
|
||||
assertThat(oldModuleNames).isEmpty()
|
||||
}
|
||||
|
||||
@@ -26,7 +26,7 @@ import java.nio.file.Paths
|
||||
@RunsInActiveStoreMode
|
||||
class ModuleStoreTest {
|
||||
companion object {
|
||||
ClassRule val projectRule = ProjectRule()
|
||||
@ClassRule val projectRule = ProjectRule()
|
||||
|
||||
val MODULE_DIR = "\$MODULE_DIR$"
|
||||
|
||||
@@ -41,7 +41,7 @@ class ModuleStoreTest {
|
||||
|
||||
private fun VirtualFile.loadModule() = runWriteAction { ModuleManager.getInstance(projectRule.project).loadModule(getPath()) }
|
||||
|
||||
fun Path.createModule() = runWriteAction { ModuleManager.getInstance(projectRule.project).newModule(systemIndependentPath, ModuleTypeId.JAVA_MODULE) }
|
||||
fun Path.createModule() = projectRule.createModule(this)
|
||||
}
|
||||
|
||||
private val tempDirManager = TemporaryDirectory()
|
||||
@@ -159,4 +159,6 @@ class ModuleStoreTest {
|
||||
}
|
||||
|
||||
val Module.contentRootUrls: Array<String>
|
||||
get() = ModuleRootManager.getInstance(this).getContentRootUrls()
|
||||
get() = ModuleRootManager.getInstance(this).getContentRootUrls()
|
||||
|
||||
fun ProjectRule.createModule(path: Path) = runWriteAction { ModuleManager.getInstance(project).newModule(path.systemIndependentPath, ModuleTypeId.JAVA_MODULE) }
|
||||
@@ -33,7 +33,6 @@ import com.intellij.openapi.vfs.newvfs.persistent.PersistentFSImpl
|
||||
import com.intellij.openapi.vfs.pointers.VirtualFilePointerManager
|
||||
import com.intellij.testFramework.fixtures.IdeaProjectTestFixture
|
||||
import com.intellij.testFramework.fixtures.IdeaTestFixtureFactory
|
||||
import com.intellij.testFramework.fixtures.TestFixtureBuilder
|
||||
import com.intellij.util.SmartList
|
||||
import com.intellij.util.ThrowableRunnable
|
||||
import com.intellij.util.lang.CompoundRuntimeException
|
||||
@@ -50,7 +49,6 @@ import java.lang.annotation.Target
|
||||
import java.lang.reflect.InvocationTargetException
|
||||
import java.util.concurrent.atomic.AtomicBoolean
|
||||
import javax.swing.SwingUtilities
|
||||
import kotlin.properties.Delegates
|
||||
|
||||
/**
|
||||
* Project created on request, so, could be used as a bare (only application).
|
||||
@@ -156,24 +154,6 @@ public open class FixtureRule() : ExternalResource() {
|
||||
}
|
||||
}
|
||||
|
||||
public fun FixtureRule(tuner: TestFixtureBuilder<IdeaProjectTestFixture>.() -> Unit): FixtureRule = HeavyFixtureRule(tuner)
|
||||
|
||||
private class HeavyFixtureRule(private val tune: TestFixtureBuilder<IdeaProjectTestFixture>.() -> Unit) : FixtureRule() {
|
||||
private var name: String by Delegates.notNull()
|
||||
|
||||
override final fun apply(base: Statement, description: Description): Statement {
|
||||
name = description.getMethodName()
|
||||
return super.apply(base, description)
|
||||
}
|
||||
|
||||
override final fun createBuilder(): TestFixtureBuilder<IdeaProjectTestFixture> {
|
||||
val builder = IdeaTestFixtureFactory.getFixtureFactory().createFixtureBuilder(name)
|
||||
_projectFixture = builder.getFixture()
|
||||
builder.tune()
|
||||
return builder
|
||||
}
|
||||
}
|
||||
|
||||
public class RuleChain(vararg val rules: TestRule) : TestRule {
|
||||
override fun apply(base: Statement, description: Description): Statement {
|
||||
var statement = base
|
||||
|
||||
Reference in New Issue
Block a user