Skip to content

Commit 8b7f441

Browse files
committed
Small fixes
Signed-off-by: Marcin Kuszczak <1508798+aartiPl@users.noreply.github.com>
1 parent 21cad73 commit 8b7f441

6 files changed

Lines changed: 11 additions & 14 deletions

File tree

TODO.md

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
# kscript 4.2 features:
22

33
* Release kscript to Maven Central
4-
* Test local artifacts directory
54

65
* Change a way of executing .kts files (investigate if we can get rid of reflections)
76
* Onboard on brew

src/integration/kotlin/io/github/kscripting/kscript/integration/CliReplTest.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
package io.github.kscripting.kscript.integration
22

3-
import io.github.kscripting.kscript.integration.tools.TestAssertion
3+
import io.github.kscripting.kscript.integration.tools.TestAssertion.startsWith
44
import io.github.kscripting.kscript.integration.tools.TestAssertion.verify
55
import org.junit.jupiter.api.Tag
66
import org.junit.jupiter.api.Test
@@ -10,7 +10,7 @@ class CliReplTest : TestBase {
1010
@Tag("posix")
1111
@Tag("windows")
1212
fun `Do not run interactive mode prep without script argument`() {
13-
verify("kscript -i", 1, "", TestAssertion.startsWith("kscript - Enhanced scripting support for Kotlin"))
13+
verify("kscript -i", 1, "", startsWith("kscript - Enhanced scripting support for Kotlin"))
1414
}
1515

1616
// fun `CLI REPL tests`() {

src/main/kotlin/io/github/kscripting/kscript/KscriptHandler.kt

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -72,7 +72,7 @@ class KscriptHandler(
7272

7373
val resolvedDependencies = cache.getOrCreateDependencies(script.digest) {
7474
val localArtifacts = if (config.scriptingConfig.artifactsDir != null) {
75-
getArtifactsRecursively(config.scriptingConfig.artifactsDir)
75+
getArtifactsRecursively(config.scriptingConfig.artifactsDir, DependencyResolver.supportedExtensions)
7676
} else emptyList()
7777

7878
DependencyResolver(script.repositories).resolve(script.dependencies) + localArtifacts

src/main/kotlin/io/github/kscripting/kscript/resolver/DependencyResolver.kt

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -60,13 +60,15 @@ class DependencyResolver(private val customRepos: Set<Repository>) {
6060
}.flatten().map {
6161
it.toOsPath()
6262
}.filter {
63-
it.extension == "jar" || it.extension == "aar"
63+
supportedExtensions.contains(it.extension)
6464
}.toSet()
6565

6666
return resolvedDependencies
6767
}
6868

6969
companion object {
70+
val supportedExtensions = listOf("jar", "aar")
71+
7072
private val exceptionMessage =
7173
"""|Artifact resolution failure. Check the connection (http/https, port, proxy, credentials, etc.) of your
7274
|maven dependency locators. If you suspect this is a bug, you can create an issue on:

src/main/kotlin/io/github/kscripting/kscript/util/FileUtils.kt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,11 +56,11 @@ object FileUtils {
5656
return path
5757
}
5858

59-
fun getArtifactsRecursively(osPath: OsPath): List<OsPath> {
59+
fun getArtifactsRecursively(osPath: OsPath, supportedExtensions: List<String>): List<OsPath> {
6060
val artifacts = mutableListOf<OsPath>()
6161

6262
osPath.toNativeFile().absoluteFile.walk().forEach {
63-
if (it.isFile && (it.extension == "jar" || it.extension == "aar")) {
63+
if (it.isFile && supportedExtensions.contains(it.extension)) {
6464
artifacts.add(it.toOsPath())
6565
}
6666
}

src/test/kotlin/io/github/kscripting/kscript/util/FileUtilsTest.kt

Lines changed: 3 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,11 @@ import io.github.kscripting.shell.model.OsType
77
import io.github.kscripting.shell.model.readText
88
import io.github.kscripting.shell.model.toNativeFile
99
import org.junit.jupiter.api.BeforeEach
10-
import org.junit.jupiter.api.Disabled
1110
import org.junit.jupiter.api.Test
1211
import org.apache.commons.io.FileUtils as ApacheFileUtils
1312

1413
class FileUtilsTest {
15-
private val path = OsPath.createOrThrow(OsType.native, "build/tmp/file_utils_test")
14+
private val path = OsPath.createOrThrow(OsType.native, "./build/tmp/file_utils_test")
1615
private val newFile1 = path.resolve("test1.txt")
1716
private val newFile2 = path.resolve("test2.txt")
1817
private val newFile3 = path.resolve("firstDir", "secondDir", "test3.txt")
@@ -31,8 +30,6 @@ class FileUtilsTest {
3130
}
3231

3332
@Test
34-
//TODO: re-enable it
35-
@Disabled
3633
fun `Test symlink file`() {
3734
FileUtils.createFile(newFile1, content1)
3835
FileUtils.symLinkOrCopy(newFile2, newFile1)
@@ -41,8 +38,6 @@ class FileUtilsTest {
4138
}
4239

4340
@Test
44-
//TODO: re-enable it
45-
@Disabled
4641
fun `Create dirs if needed`() {
4742
FileUtils.createFile(newFile3, content1)
4843
FileUtils.symLinkOrCopy(newFile4, newFile3)
@@ -53,8 +48,9 @@ class FileUtilsTest {
5348
@Test
5449
fun `Assert that getArtifactsRecursively finds all the artifacts in the path`() {
5550
val artifactsPath = OsPath.createOrThrow(OsType.native, "test/resources/config/jars/")
51+
val supportedExtensions = listOf("jar", "aar")
5652

57-
assertThat(FileUtils.getArtifactsRecursively(artifactsPath)).transform {
53+
assertThat(FileUtils.getArtifactsRecursively(artifactsPath, supportedExtensions)).transform {
5854
it.map { it.stringPath().substringAfterLast("jars").replace("\\", "/") }
5955
}.isEqualTo(listOf("/jar_file_1.jar", "/subdir/jar_file_2.jar"))
6056
}

0 commit comments

Comments
 (0)