Use reflection for test to fix compiling core to older Java versions

This commit is contained in:
games647
2024-05-06 09:40:07 +02:00
parent caf5188246
commit 690eabaa5e
3 changed files with 12 additions and 6 deletions
@@ -33,6 +33,7 @@ import org.junit.jupiter.api.condition.JRE;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import java.lang.reflect.InvocationTargetException;
import java.util.concurrent.Executors;
import java.util.concurrent.atomic.AtomicBoolean;
@@ -63,8 +64,14 @@ class AsyncSchedulerTest {
}
private static void setVirtual(AtomicBoolean virtual) {
if (Thread.currentThread().isVirtual()) {
virtual.set(true);
boolean isVirtual;
try {
isVirtual = (boolean) Thread.class.getDeclaredMethod("isVirtual").invoke(Thread.currentThread());
if (isVirtual) {
virtual.set(true);
}
} catch (IllegalAccessException | InvocationTargetException | NoSuchMethodException ex) {
ex.printStackTrace();
}
}
}