From 4e9d4b3e5f5aff153f6abc0a03ed50918f686af2 Mon Sep 17 00:00:00 2001 From: Yuri Schimke Date: Sat, 11 Jan 2025 11:01:53 +0000 Subject: [PATCH] Fix test --- .../src/jvmTest/kotlin/okhttp3/CacheLockTest.kt | 17 +++++++++++------ 1 file changed, 11 insertions(+), 6 deletions(-) diff --git a/okhttp/src/jvmTest/kotlin/okhttp3/CacheLockTest.kt b/okhttp/src/jvmTest/kotlin/okhttp3/CacheLockTest.kt index d36470f25e06..9c0413314271 100644 --- a/okhttp/src/jvmTest/kotlin/okhttp3/CacheLockTest.kt +++ b/okhttp/src/jvmTest/kotlin/okhttp3/CacheLockTest.kt @@ -37,6 +37,7 @@ import org.junit.jupiter.api.Test import org.junit.jupiter.api.assertThrows import org.junit.jupiter.api.extension.RegisterExtension import org.junit.jupiter.api.io.TempDir +import java.util.Optional @org.junit.jupiter.api.parallel.Isolated class CacheLockTest { @@ -99,17 +100,21 @@ class CacheLockTest { lockFile.toFile().createNewFile() val javaExe = -// if (PlatformVersion.majorVersion >= 9) { -// @Suppress("Since15") -// ProcessHandle.current().info().command().get().toPath() -// } else { + if (PlatformVersion.majorVersion >= 9) { + val info = Class.forName("java.lang.ProcessHandle").run { + val handle = getMethod("current").invoke(null) + getMethod("info").invoke(handle) + } + val command = Class.forName("java.lang.ProcessHandle\$Info").getMethod("command").invoke(info) as Optional<*> + (command.get() as String).toPath() + } else { System.getenv("JAVA_HOME").toPath() / "bin/java" -// } + } val process = ProcessBuilder().command( javaExe.toString(), - "src/test/java/okhttp3/LockTestProgram.java", + "src/jvmTest/kotlin/okhttp3/LockTestProgram.java", (lockFile.toString()), ) .redirectErrorStream(true)