Skip to content

Commit 9dee7a2

Browse files
committed
Fixing bug with running elm-test
1 parent 9960f32 commit 9dee7a2

File tree

1 file changed

+16
-5
lines changed

1 file changed

+16
-5
lines changed

src/main/kotlin/org/elm/ide/test/run/ElmTestRunConfigurationProducer.kt

Lines changed: 16 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,8 @@ class ElmTestRunConfigurationProducer : LazyRunConfigurationProducer<ElmTestRunC
1818
val vfile = context.location?.virtualFile
1919

2020
configuration.options.elmFolder = elmFolder
21-
if (vfile != null && context.project.elmToolchain.isElmTestRsEnabled) {
22-
val filter = ElmTestElementNavigator.findTestDescription(context.psiLocation)
21+
if (vfile != null) {
22+
val filter = if (context.project.elmToolchain.isElmTestRsEnabled) ElmTestElementNavigator.findTestDescription(context.psiLocation) else null
2323
configuration.options.filteredTestConfig = ElmTestRunConfiguration.FilteredTest.from(sourceElement.get(), filter)
2424
}
2525

@@ -33,9 +33,20 @@ class ElmTestRunConfigurationProducer : LazyRunConfigurationProducer<ElmTestRunC
3333
val vfile = context.location?.virtualFile
3434
val filter = if (context.project.elmToolchain.isElmTestRsEnabled) ElmTestElementNavigator.findTestDescription(context.psiLocation) else null
3535

36-
return configuration.options.elmFolder == elmFolder
37-
&& configuration.options.filteredTestConfig?.filePath == vfile?.path
38-
&& configuration.options.filteredTestConfig?.filter == filter
36+
var result = configuration.options.elmFolder == elmFolder
37+
val config = configuration.options.filteredTestConfig
38+
39+
if (config == null) return result
40+
41+
if (config.moduleName.isNotBlank()) {
42+
result = result && config.filePath == vfile?.path
43+
}
44+
45+
if (!config.filter.isNullOrBlank()) {
46+
result = result && config.filter == filter
47+
}
48+
49+
return result
3950
}
4051

4152
private fun getCandidateElmFolder(context: ConfigurationContext): String? {

0 commit comments

Comments
 (0)