diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle index 8c3d3fa4f1b..06240c5bba0 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle @@ -6,7 +6,7 @@ buildscript { } dependencies { classpath 'com.android.tools.build:gradle:3.2.1' - classpath kotlin('gradle-plugin', '1.3.61') + classpath 'org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.61' } } group = 'testGroupId' diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle.kts index 82538bf3d83..41b736e6b26 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/expected/build.gradle.kts @@ -6,7 +6,7 @@ buildscript { } dependencies { classpath("com.android.tools.build:gradle:3.2.1") - classpath(kotlin("gradle-plugin", "1.3.61")) + classpath("org.jetbrains.kotlin:kotlin-gradle-plugin:1.3.61") } } group = "testGroupId" diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/settings.yaml index bd1ec7d146b..cabab9f58a6 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/android/settings.yaml @@ -1,11 +1,10 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: name: android androidSdkPath: /home/user/Android/Sdk - kind: singleplatform + kind: singleplatformJvm name: android sourcesets: - type: main diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle index c5edde51cb0..781e4528deb 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle @@ -33,7 +33,9 @@ kotlin { } } browserTest { - + dependencies { + implementation kotlin('test-js') + } } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle.kts index d096afa222a..6037d8dfb04 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/build.gradle.kts @@ -30,6 +30,10 @@ kotlin { implementation(kotlin("stdlib-js")) } } - val browserTest by getting + val browserTest by getting { + dependencies { + implementation(kotlin("test-js")) + } + } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/settings.yaml index 794eef4e615..bf2cf69f411 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jsNodeAndBrowserTargets/settings.yaml @@ -1,5 +1,4 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: multiplatform @@ -12,7 +11,9 @@ kotlin: sourcesets: - type: main - type: test - - type: jsBrowser + - type: + name: jsBrowser + testFramework: JS kind: target name: browser sourcesets: diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle index f6990049aa3..4a8c3593736 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle @@ -16,7 +16,9 @@ kotlin { } } jvmTest { - + dependencies { + implementation kotlin('test-junit') + } } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle.kts index 6be5aff01c3..83321d8a56f 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/build.gradle.kts @@ -15,6 +15,10 @@ kotlin { implementation(kotlin("stdlib-jdk8")) } } - val jvmTest by getting + val jvmTest by getting { + dependencies { + implementation(kotlin("test-junit")) + } + } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/settings.yaml index bb9b23009c2..05ddaa44bd2 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/jvmTarget/settings.yaml @@ -1,12 +1,13 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: multiplatform kind: multiplatform name: a subModules: - - type: jvmTarget + - type: + name: jvmTarget + testFramework: JUNIT4 kind: target name: jvm sourcesets: diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle index 8b356266462..976461f7cff 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle @@ -8,5 +8,6 @@ repositories { mavenCentral() } dependencies { + testImplementation 'org.jetbrains.kotlin:kotlin-test-junit' implementation 'org.jetbrains.kotlin:kotlin-stdlib-jdk8' } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle.kts index bd995e8ede6..c5b816804b9 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/build.gradle.kts @@ -8,5 +8,6 @@ repositories { mavenCentral() } dependencies { + testImplementation(kotlin("test-junit")) implementation(kotlin("stdlib-jdk8")) } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/pom.xml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/pom.xml index 6f189cee6be..c6d077c24d1 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/pom.xml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/pom.xml @@ -51,6 +51,12 @@ + + org.jetbrains.kotlin + kotlin-test-junit + 1.3.61 + test + org.jetbrains.kotlin kotlin-stdlib-jdk8 diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/settings.yaml index ba06135f4cb..d880eb3eb4a 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/kotlinJvm/settings.yaml @@ -1,10 +1,11 @@ kotlin: - version: 1.3.61 projectKind: Singleplatform modules: - - type: JVM Module + - type: + name: JVM Module + testFramework: JUNIT4 name: nya - kind: singleplatform + kind: singleplatformJvm sourcesets: - type: main diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle index 3d00e4ed29e..07f325d1cb5 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle @@ -12,10 +12,10 @@ repositories { kotlin { def hostOs = System.getProperty("os.name") def isMingwX64 = hostOs.startsWith("Windows") - KotlinNativeTargetWithTests nativeTarget - if (hostOs == "Mac OS X") nativeTarget = macosX64('myNative') - else if (hostOs == "Linux") nativeTarget = linuxX64("myNative") - else if (isMingwX64) nativeTarget = mingwX64("myNative") + KotlinNativeTargetWithTests myNativeTarget + if (hostOs == "Mac OS X") myNativeTarget = macosX64('myNative') + else if (hostOs == "Linux") myNativeTarget = linuxX64("myNative") + else if (isMingwX64) myNativeTarget = mingwX64("myNative") else throw new GradleException("Host OS is not supported in Kotlin/Native.") diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle.kts index 125412cb181..769fd58dc14 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/build.gradle.kts @@ -10,7 +10,7 @@ repositories { kotlin { val hostOs = System.getProperty("os.name") val isMingwX64 = hostOs.startsWith("Windows") - val nativeTarget = when { + val myNativeTarget = when { hostOs == "Mac OS X" -> macosX64("myNative") hostOs == "Linux" -> linuxX64("myNative") isMingwX64 -> mingwX64("myNative") diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/settings.yaml index 124d55f583e..0ae06b46f48 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/nativeForCurrentSystem/settings.yaml @@ -1,5 +1,4 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: multiplatform diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle index 68579987878..c5fcbb53e41 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle @@ -21,7 +21,9 @@ kotlin { } } jvmTest { - + dependencies { + implementation kotlin('test-junit') + } } aMain { dependencies { @@ -29,7 +31,9 @@ kotlin { } } aTest { - + dependencies { + implementation kotlin('test-js') + } } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle.kts b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle.kts index c9b09f954cd..3850bb4d6df 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle.kts +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/build.gradle.kts @@ -20,12 +20,20 @@ kotlin { implementation(kotlin("stdlib-jdk8")) } } - val jvmTest by getting + val jvmTest by getting { + dependencies { + implementation(kotlin("test-junit")) + } + } val aMain by getting { dependencies { implementation(kotlin("stdlib-js")) } } - val aTest by getting + val aTest by getting { + dependencies { + implementation(kotlin("test-js")) + } + } } } \ No newline at end of file diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/settings.yaml index 9eac20f17d0..2dd45b431bb 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleMultiplatform/settings.yaml @@ -1,18 +1,21 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: multiplatform kind: multiplatform name: a subModules: - - type: jvmTarget + - type: + name: jvmTarget + testFramework: JUNIT4 kind: target name: jvm sourcesets: - type: main - type: test - - type: jsBrowser + - type: + name: jsBrowser + testFramework: JS kind: target name: a sourcesets: diff --git a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleNativeTarget/settings.yaml b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleNativeTarget/settings.yaml index 142fcd81239..f178c673cf9 100644 --- a/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleNativeTarget/settings.yaml +++ b/libraries/tools/new-project-wizard/new-project-wizard-cli/testData/buildFileGeneration/simpleNativeTarget/settings.yaml @@ -1,5 +1,4 @@ kotlin: - version: 1.3.61 projectKind: Multiplatform modules: - type: multiplatform diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt index 041a55e0033..cc3191424c9 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/JsModuleConfigurator.kt @@ -14,18 +14,18 @@ import org.jetbrains.kotlin.tools.projectWizard.plugins.kotlin.ModuleType import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.ModuleKind -abstract class JSConfigurator : ModuleConfiguratorWithTests() { +interface JSConfigurator : ModuleConfigurator { override val moduleType: ModuleType get() = ModuleType.js - - override fun defaultTestFramework(): KotlinTestFramework = KotlinTestFramework.JS } -object JsSingleplatformModuleConfigurator : JSConfigurator() { +object JsSingleplatformModuleConfigurator : JSConfigurator, ModuleConfiguratorWithTests() { override val moduleKind = ModuleKind.singleplatformJs override val suggestedModuleName = "js" override val id = "jsSinglepaltform" override val text = "JS for Browser" + override fun defaultTestFramework(): KotlinTestFramework = KotlinTestFramework.JS + override val canContainSubModules = false override fun createKotlinPluginIR(configurationData: ModuleConfigurationData, module: Module): KotlinBuildSystemPluginIR? = diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/ModuleConfiguratorWithTests.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/ModuleConfiguratorWithTests.kt index 1ebf3e2a426..986ca1f89c8 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/ModuleConfiguratorWithTests.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/ModuleConfiguratorWithTests.kt @@ -8,7 +8,6 @@ package org.jetbrains.kotlin.tools.projectWizard.moduleConfigurators import org.jetbrains.kotlin.tools.projectWizard.core.ValuesReadingContext import org.jetbrains.kotlin.tools.projectWizard.core.entity.ModuleConfiguratorSetting import org.jetbrains.kotlin.tools.projectWizard.core.entity.ModuleConfiguratorSettingReference -import org.jetbrains.kotlin.tools.projectWizard.core.entity.TemplateSettingReference import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.BuildSystemIR import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.DependencyType import org.jetbrains.kotlin.tools.projectWizard.ir.buildsystem.KotlinArbitraryDependencyIR @@ -21,7 +20,7 @@ import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.Module import org.jetbrains.kotlin.tools.projectWizard.settings.buildsystem.ModuleKind abstract class ModuleConfiguratorWithTests : ModuleConfiguratorWithSettings() { - val framework by enumSetting( + val testFramework by enumSetting( "Test Framework", neededAtPhase = GenerationPhase.PROJECT_GENERATION ) { @@ -39,7 +38,7 @@ abstract class ModuleConfiguratorWithTests : ModuleConfiguratorWithSettings() { override fun ValuesReadingContext.createModuleIRs(configurationData: ModuleConfigurationData, module: Module): List = withSettingsOf(module) { - framework.reference.settingValue.dependencyNames.map { dependencyName -> + testFramework.reference.settingValue.dependencyNames.map { dependencyName -> KotlinArbitraryDependencyIR( dependencyName, isInMppModule = module.kind @@ -50,7 +49,7 @@ abstract class ModuleConfiguratorWithTests : ModuleConfiguratorWithSettings() { } } - override val settings: List> = listOf(framework) + override val settings: List> = listOf(testFramework) } diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt index 0b86803a835..48b4388c45f 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/moduleConfigurators/TargetConfigurator.kt @@ -51,13 +51,15 @@ private fun Module.createTargetAccessIr(moduleSubType: ModuleSubType) = ) -abstract class JsTargetConfigurator : JSConfigurator(), TargetConfigurator, SingleCoexistenceTargetConfigurator +interface JsTargetConfigurator : JSConfigurator, TargetConfigurator, SingleCoexistenceTargetConfigurator -object JsBrowserTargetConfigurator : JsTargetConfigurator() { +object JsBrowserTargetConfigurator : JsTargetConfigurator, ModuleConfiguratorWithTests() { override val id = "jsBrowser" override val text = "Browser" override val suggestedModuleName = "browser" + override fun defaultTestFramework(): KotlinTestFramework = KotlinTestFramework.JS + override fun createTargetIrs(module: Module): List = buildList { +DefaultTargetConfigurationIR( module.createTargetAccessIr(ModuleSubType.js), @@ -70,7 +72,7 @@ object JsBrowserTargetConfigurator : JsTargetConfigurator() { } } -object JsNodeTargetConfigurator : JsTargetConfigurator() { +object JsNodeTargetConfigurator : JsTargetConfigurator { override val id = "jsNode" override val text = "Node.js" override val suggestedModuleName = "nodeJs" diff --git a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt index 443444e4146..47130c6359a 100644 --- a/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt +++ b/libraries/tools/new-project-wizard/src/org/jetbrains/kotlin/tools/projectWizard/settings/buildsystem/Module.kt @@ -37,6 +37,7 @@ class Module( withSettingsOf(module) { configurator.settings.map { setting -> val value = setting.reference.notRequiredSettingValue + ?: setting.defaultValue ?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank") setting.validator.validate(this@settingValidator, value) }.fold() @@ -46,6 +47,7 @@ class Module( org.jetbrains.kotlin.tools.projectWizard.templates.withSettingsOf(module) { template.settings.map { setting -> val value = setting.reference.notRequiredSettingValue + ?: setting.defaultValue ?: return@map ValidationResult.ValidationError("${setting.title.capitalize()} should not be blank") setting.validator.validate(this@settingValidator, value) }.fold()