|
1 | 1 | /*
|
2 |
| - * Copyright 2012-2024 the original author or authors. |
| 2 | + * Copyright 2012-2025 the original author or authors. |
3 | 3 | *
|
4 | 4 | * Licensed under the Apache License, Version 2.0 (the "License");
|
5 | 5 | * you may not use this file except in compliance with the License.
|
|
17 | 17 | package org.springframework.boot.info;
|
18 | 18 |
|
19 | 19 | import org.junit.jupiter.api.Test;
|
| 20 | +import org.junit.jupiter.api.condition.EnabledForJreRange; |
| 21 | +import org.junit.jupiter.api.condition.JRE; |
20 | 22 |
|
21 | 23 | import org.springframework.boot.info.ProcessInfo.MemoryInfo.MemoryUsageInfo;
|
22 | 24 | import org.springframework.boot.info.ProcessInfo.VirtualThreadsInfo;
|
23 |
| -import org.springframework.util.ClassUtils; |
24 | 25 |
|
25 | 26 | import static org.assertj.core.api.Assertions.assertThat;
|
26 | 27 |
|
@@ -58,22 +59,22 @@ void memoryInfoIsAvailable() {
|
58 | 59 | }
|
59 | 60 |
|
60 | 61 | @Test
|
61 |
| - void virtualThreadsInfoIsNullWhenMXBeanIsNotAccessible() { |
62 |
| - if (ClassUtils.isPresent("jdk.management.VirtualThreadSchedulerMXBean", null)) { |
63 |
| - ProcessInfo processInfo = new ProcessInfo(); |
64 |
| - |
65 |
| - VirtualThreadsInfo virtualThreadsInfo = processInfo.getVirtualThreads(); |
66 |
| - |
67 |
| - assertThat(virtualThreadsInfo).isNotNull(); |
68 |
| - assertThat(virtualThreadsInfo.getMounted()).isGreaterThanOrEqualTo(0); |
69 |
| - assertThat(virtualThreadsInfo.getQueued()).isGreaterThanOrEqualTo(0); |
70 |
| - assertThat(virtualThreadsInfo.getParallelism()).isGreaterThan(0); |
71 |
| - assertThat(virtualThreadsInfo.getPoolSize()).isGreaterThan(0); |
72 |
| - } else { |
73 |
| - ProcessInfo processInfo = new ProcessInfo(); |
| 62 | + @EnabledForJreRange(min = JRE.JAVA_24) |
| 63 | + void virtualThreadsInfoIfAvailable() { |
| 64 | + ProcessInfo processInfo = new ProcessInfo(); |
| 65 | + VirtualThreadsInfo virtualThreadsInfo = processInfo.getVirtualThreads(); |
| 66 | + assertThat(virtualThreadsInfo).isNotNull(); |
| 67 | + assertThat(virtualThreadsInfo.getMounted()).isGreaterThanOrEqualTo(0); |
| 68 | + assertThat(virtualThreadsInfo.getQueued()).isGreaterThanOrEqualTo(0); |
| 69 | + assertThat(virtualThreadsInfo.getParallelism()).isGreaterThan(0); |
| 70 | + assertThat(virtualThreadsInfo.getPoolSize()).isGreaterThanOrEqualTo(0); |
| 71 | + } |
74 | 72 |
|
75 |
| - assertThat(processInfo.getVirtualThreads()).isNull(); |
76 |
| - } |
| 73 | + @Test |
| 74 | + @EnabledForJreRange(max = JRE.JAVA_23) |
| 75 | + void virtualThreadsInfoIfNotAvailable() { |
| 76 | + ProcessInfo processInfo = new ProcessInfo(); |
| 77 | + assertThat(processInfo.getVirtualThreads()).isNull(); |
77 | 78 | }
|
78 | 79 |
|
79 | 80 | }
|
0 commit comments