kubernetes-client
kubernetes-client copied to clipboard
Cannot invoke "io.fabric8.kubernetes.client.server.mock.KubernetesMockServer.destroy()" because "this.mock" is null
Describe the bug
Using the @EnableKubernetesMockClient annotation the test cannot be initialized.
Fabric8 Kubernetes Client version
6.9.2
Steps to reproduce
- Create a test like this
import io.fabric8.kubernetes.client.KubernetesClient;
import io.fabric8.kubernetes.client.server.mock.EnableKubernetesMockClient;
import io.fabric8.kubernetes.client.server.mock.KubernetesMockServer;
import org.junit.jupiter.api.Test;
@EnableKubernetesMockClient(crud = true)
public class ATest {
KubernetesMockServer server;
KubernetesClient client;
@Test
void test() {
}
}
- Run the test
Expected behavior
Test passes
Runtime
Kubernetes (vanilla)
Kubernetes API Server version
1.25.3@latest
Environment
macOS
Fabric8 Kubernetes Client Logs
ava.lang.NoSuchMethodError: 'void okhttp3.internal.Internal.initializeInstanceForTests()'
at okhttp3.mockwebserver.MockWebServer.<clinit>(MockWebServer.java:103)
at io.fabric8.kubernetes.client.server.mock.KubernetesMockServerExtension.initializeKubernetesClientAndMockServer(KubernetesMockServerExtension.java:109)
at io.fabric8.kubernetes.client.server.mock.KubernetesMockServerExtension.setKubernetesClientAndMockServerFields(KubernetesMockServerExtension.java:156)
at io.fabric8.kubernetes.client.server.mock.KubernetesMockServerExtension.beforeAll(KubernetesMockServerExtension.java:80)
at java.base/java.util.ArrayList.forEach(ArrayList.java:1511)
Suppressed: java.lang.NullPointerException: Cannot invoke "io.fabric8.kubernetes.client.server.mock.KubernetesMockServer.destroy()" because "this.mock" is null
at io.fabric8.kubernetes.client.server.mock.KubernetesMockServerExtension.destroy(KubernetesMockServerExtension.java:120)
at io.fabric8.kubernetes.client.server.mock.KubernetesMockServerExtension.afterAll(KubernetesMockServerExtension.java:70)
... 1 more
Additional context
No response
@marcosflobo : I tried reproducing this issue but couldn't reproduce it. For me, it seems to be running okay. Could you please check my reproducer project to see what I'm missing? What JUnit version are you using? Do you have any kind of exclusion for okhttp in your project?
This issue has been automatically marked as stale because it has not had any activity since 90 days. It will be closed if no further activity occurs within 7 days. Thank you for your contributions!
I encountered this issue in a gradle project and was able to resolve it by adding com.squareup.okhttp3:mockwebserver as a test dependency.