From 872f6435aca1f986f0daa306e3612d750e9e0814 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edd=C3=BA=20Mel=C3=A9ndez?= Date: Thu, 16 Apr 2026 00:11:48 -0500 Subject: [PATCH 1/2] Use weaviate client v6 --- modules/weaviate/build.gradle | 15 +++- .../weaviate/WeaviateContainerTest.java | 68 +++++++++++-------- 2 files changed, 55 insertions(+), 28 deletions(-) diff --git a/modules/weaviate/build.gradle b/modules/weaviate/build.gradle index fd61cd7e3f4..5392b585b71 100644 --- a/modules/weaviate/build.gradle +++ b/modules/weaviate/build.gradle @@ -3,5 +3,18 @@ description = "Testcontainers :: Weaviate" dependencies { api project(':testcontainers') - testImplementation 'io.weaviate:client:5.5.0' + testImplementation 'io.weaviate:client6:6.1.0' +} + +test { + javaLauncher = javaToolchains.launcherFor { + languageVersion = JavaLanguageVersion.of(17) + } +} + +compileTestJava { + javaCompiler = javaToolchains.compilerFor { + languageVersion = JavaLanguageVersion.of(17) + } + options.release.set(17) } diff --git a/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java b/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java index 9a1ad47d5af..fbe1ddc4ab3 100644 --- a/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java +++ b/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java @@ -1,9 +1,7 @@ package org.testcontainers.weaviate; -import io.weaviate.client.Config; -import io.weaviate.client.WeaviateClient; -import io.weaviate.client.base.Result; -import io.weaviate.client.v1.misc.model.Meta; +import io.weaviate.client6.v1.api.InstanceMetadata; +import io.weaviate.client6.v1.api.WeaviateClient; import org.assertj.core.api.InstanceOfAssertFactories; import org.junit.jupiter.api.Test; @@ -17,22 +15,30 @@ class WeaviateContainerTest { @Test - void testWeaviate() { + void testWeaviate() throws Exception { try ( // container { - WeaviateContainer weaviate = new WeaviateContainer("cr.weaviate.io/semitechnologies/weaviate:1.29.0") + WeaviateContainer weaviate = new WeaviateContainer("cr.weaviate.io/semitechnologies/weaviate:1.32.0") // } ) { weaviate.start(); - Config config = new Config("http", weaviate.getHttpHostAddress()); - config.setGRPCHost(weaviate.getGrpcHostAddress()); - WeaviateClient client = new WeaviateClient(config); - Result meta = client.misc().metaGetter().run(); - assertThat(meta.getResult().getVersion()).isEqualTo("1.29.0"); + try ( + WeaviateClient client = WeaviateClient.connectToCustom(conn -> + conn + .scheme("http") + .httpHost(weaviate.getHost()) + .httpPort(weaviate.getMappedPort(8080)) + .grpcHost(weaviate.getHost()) + .grpcPort(weaviate.getMappedPort(50051)) + ) + ) { + InstanceMetadata meta = client.meta(); + assertThat(meta.version()).isEqualTo("1.32.0"); + } } } @Test - void testWeaviateWithModules() { + void testWeaviateWithModules() throws Exception { List enableModules = Arrays.asList( "backup-filesystem", "text2vec-openai", @@ -43,22 +49,30 @@ void testWeaviateWithModules() { Map env = new HashMap<>(); env.put("ENABLE_MODULES", String.join(",", enableModules)); env.put("BACKUP_FILESYSTEM_PATH", "/tmp/backups"); - try (WeaviateContainer weaviate = new WeaviateContainer("semitechnologies/weaviate:1.29.0").withEnv(env)) { + try (WeaviateContainer weaviate = new WeaviateContainer("semitechnologies/weaviate:1.32.0").withEnv(env)) { weaviate.start(); - Config config = new Config("http", weaviate.getHttpHostAddress()); - config.setGRPCHost(weaviate.getGrpcHostAddress()); - WeaviateClient client = new WeaviateClient(config); - Result meta = client.misc().metaGetter().run(); - assertThat(meta.getResult().getVersion()).isEqualTo("1.29.0"); - Object modules = meta.getResult().getModules(); - assertThat(modules) - .isNotNull() - .asInstanceOf(InstanceOfAssertFactories.map(String.class, Object.class)) - .extracting(Map::keySet) - .satisfies(keys -> { - assertThat(keys.size()).isEqualTo(enableModules.size()); - keys.forEach(key -> assertThat(enableModules.contains(key)).isTrue()); - }); + try ( + WeaviateClient client = WeaviateClient.connectToCustom(conn -> + conn + .scheme("http") + .httpHost(weaviate.getHost()) + .httpPort(weaviate.getMappedPort(8080)) + .grpcHost(weaviate.getHost()) + .grpcPort(weaviate.getMappedPort(50051)) + ) + ) { + InstanceMetadata meta = client.meta(); + assertThat(meta.version()).isEqualTo("1.32.0"); + Map modules = meta.modules(); + assertThat(modules) + .isNotNull() + .asInstanceOf(InstanceOfAssertFactories.map(String.class, Object.class)) + .extracting(Map::keySet) + .satisfies(keys -> { + assertThat(keys.size()).isEqualTo(enableModules.size()); + keys.forEach(key -> assertThat(enableModules.contains(key)).isTrue()); + }); + } } } } From 073100827e856ac1b47db236ffba140f3d53fe5f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Edd=C3=BA=20Mel=C3=A9ndez?= Date: Thu, 16 Apr 2026 00:19:02 -0500 Subject: [PATCH 2/2] Fix checkstyle --- .../weaviate/WeaviateContainerTest.java | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java b/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java index fbe1ddc4ab3..d103970053c 100644 --- a/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java +++ b/modules/weaviate/src/test/java/org/testcontainers/weaviate/WeaviateContainerTest.java @@ -22,14 +22,14 @@ void testWeaviate() throws Exception { ) { weaviate.start(); try ( - WeaviateClient client = WeaviateClient.connectToCustom(conn -> - conn + WeaviateClient client = WeaviateClient.connectToCustom(conn -> { + return conn .scheme("http") .httpHost(weaviate.getHost()) .httpPort(weaviate.getMappedPort(8080)) .grpcHost(weaviate.getHost()) - .grpcPort(weaviate.getMappedPort(50051)) - ) + .grpcPort(weaviate.getMappedPort(50051)); + }) ) { InstanceMetadata meta = client.meta(); assertThat(meta.version()).isEqualTo("1.32.0"); @@ -52,14 +52,14 @@ void testWeaviateWithModules() throws Exception { try (WeaviateContainer weaviate = new WeaviateContainer("semitechnologies/weaviate:1.32.0").withEnv(env)) { weaviate.start(); try ( - WeaviateClient client = WeaviateClient.connectToCustom(conn -> - conn + WeaviateClient client = WeaviateClient.connectToCustom(conn -> { + return conn .scheme("http") .httpHost(weaviate.getHost()) .httpPort(weaviate.getMappedPort(8080)) .grpcHost(weaviate.getHost()) - .grpcPort(weaviate.getMappedPort(50051)) - ) + .grpcPort(weaviate.getMappedPort(50051)); + }) ) { InstanceMetadata meta = client.meta(); assertThat(meta.version()).isEqualTo("1.32.0");