mirror of
https://gitflic.ru/project/openide/openide.git
synced 2026-10-06 06:21:16 +07:00
61 lines
1.7 KiB
Kotlin
61 lines
1.7 KiB
Kotlin
package com.intellij.configurationScript
|
|
|
|
import com.intellij.execution.ShortenCommandLine
|
|
import com.intellij.execution.application.JvmMainMethodRunConfigurationOptions
|
|
import com.intellij.testFramework.ProjectRule
|
|
import com.intellij.testFramework.assertions.Assertions.assertThat
|
|
import org.intellij.lang.annotations.Language
|
|
import org.junit.ClassRule
|
|
import org.junit.Test
|
|
|
|
class PropertyValueReaderTest {
|
|
companion object {
|
|
@JvmField
|
|
@ClassRule
|
|
val projectRule = ProjectRule()
|
|
}
|
|
|
|
@Test
|
|
fun `enum`() {
|
|
val result = readRunConfigurations("""
|
|
runConfigurations:
|
|
jvmMainMethod:
|
|
shortenClasspath: MANIFEST
|
|
""")
|
|
val options = JvmMainMethodRunConfigurationOptions()
|
|
options.shortenClasspath = ShortenCommandLine.MANIFEST
|
|
assertThat(result).containsExactly(options)
|
|
}
|
|
|
|
@Test
|
|
fun map() {
|
|
val result = readRunConfigurations("""
|
|
runConfigurations:
|
|
jvmMainMethod:
|
|
env:
|
|
foo: bar
|
|
answer: 42
|
|
""")
|
|
val options = JvmMainMethodRunConfigurationOptions()
|
|
options.env = linkedMapOf("foo" to "bar", "answer" to "42")
|
|
assertThat(result).containsExactly(options)
|
|
}
|
|
|
|
@Test
|
|
fun collection() {
|
|
val result = doReadPluginsConfiguration("""
|
|
plugins:
|
|
repositories:
|
|
- foo
|
|
- bar
|
|
- http://example.com
|
|
""")
|
|
val options = PluginsConfiguration()
|
|
options.repositories.addAll(listOf("foo", "bar", "http://example.com"))
|
|
assertThat(result).isEqualTo(options)
|
|
}
|
|
}
|
|
|
|
private fun doReadPluginsConfiguration(@Language("YAML") data: String): PluginsConfiguration? {
|
|
return readPluginsConfiguration(doRead(data.trimIndent().reader())!!)
|
|
} |