Skip to content

Commit a412b8e

Browse files
authored
Use weaviate client v6 (#11711)
1 parent 058fa82 commit a412b8e

File tree

2 files changed

+55
-28
lines changed

2 files changed

+55
-28
lines changed

modules/weaviate/build.gradle

Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,5 +3,18 @@ description = "Testcontainers :: Weaviate"
33
dependencies {
44
api project(':testcontainers')
55

6-
testImplementation 'io.weaviate:client:5.5.0'
6+
testImplementation 'io.weaviate:client6:6.1.0'
7+
}
8+
9+
test {
10+
javaLauncher = javaToolchains.launcherFor {
11+
languageVersion = JavaLanguageVersion.of(17)
12+
}
13+
}
14+
15+
compileTestJava {
16+
javaCompiler = javaToolchains.compilerFor {
17+
languageVersion = JavaLanguageVersion.of(17)
18+
}
19+
options.release.set(17)
720
}
Lines changed: 41 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,7 @@
11
package org.testcontainers.weaviate;
22

3-
import io.weaviate.client.Config;
4-
import io.weaviate.client.WeaviateClient;
5-
import io.weaviate.client.base.Result;
6-
import io.weaviate.client.v1.misc.model.Meta;
3+
import io.weaviate.client6.v1.api.InstanceMetadata;
4+
import io.weaviate.client6.v1.api.WeaviateClient;
75
import org.assertj.core.api.InstanceOfAssertFactories;
86
import org.junit.jupiter.api.Test;
97

@@ -17,22 +15,30 @@
1715
class WeaviateContainerTest {
1816

1917
@Test
20-
void testWeaviate() {
18+
void testWeaviate() throws Exception {
2119
try ( // container {
22-
WeaviateContainer weaviate = new WeaviateContainer("cr.weaviate.io/semitechnologies/weaviate:1.29.0")
20+
WeaviateContainer weaviate = new WeaviateContainer("cr.weaviate.io/semitechnologies/weaviate:1.32.0")
2321
// }
2422
) {
2523
weaviate.start();
26-
Config config = new Config("http", weaviate.getHttpHostAddress());
27-
config.setGRPCHost(weaviate.getGrpcHostAddress());
28-
WeaviateClient client = new WeaviateClient(config);
29-
Result<Meta> meta = client.misc().metaGetter().run();
30-
assertThat(meta.getResult().getVersion()).isEqualTo("1.29.0");
24+
try (
25+
WeaviateClient client = WeaviateClient.connectToCustom(conn -> {
26+
return conn
27+
.scheme("http")
28+
.httpHost(weaviate.getHost())
29+
.httpPort(weaviate.getMappedPort(8080))
30+
.grpcHost(weaviate.getHost())
31+
.grpcPort(weaviate.getMappedPort(50051));
32+
})
33+
) {
34+
InstanceMetadata meta = client.meta();
35+
assertThat(meta.version()).isEqualTo("1.32.0");
36+
}
3137
}
3238
}
3339

3440
@Test
35-
void testWeaviateWithModules() {
41+
void testWeaviateWithModules() throws Exception {
3642
List<String> enableModules = Arrays.asList(
3743
"backup-filesystem",
3844
"text2vec-openai",
@@ -43,22 +49,30 @@ void testWeaviateWithModules() {
4349
Map<String, String> env = new HashMap<>();
4450
env.put("ENABLE_MODULES", String.join(",", enableModules));
4551
env.put("BACKUP_FILESYSTEM_PATH", "/tmp/backups");
46-
try (WeaviateContainer weaviate = new WeaviateContainer("semitechnologies/weaviate:1.29.0").withEnv(env)) {
52+
try (WeaviateContainer weaviate = new WeaviateContainer("semitechnologies/weaviate:1.32.0").withEnv(env)) {
4753
weaviate.start();
48-
Config config = new Config("http", weaviate.getHttpHostAddress());
49-
config.setGRPCHost(weaviate.getGrpcHostAddress());
50-
WeaviateClient client = new WeaviateClient(config);
51-
Result<Meta> meta = client.misc().metaGetter().run();
52-
assertThat(meta.getResult().getVersion()).isEqualTo("1.29.0");
53-
Object modules = meta.getResult().getModules();
54-
assertThat(modules)
55-
.isNotNull()
56-
.asInstanceOf(InstanceOfAssertFactories.map(String.class, Object.class))
57-
.extracting(Map::keySet)
58-
.satisfies(keys -> {
59-
assertThat(keys.size()).isEqualTo(enableModules.size());
60-
keys.forEach(key -> assertThat(enableModules.contains(key)).isTrue());
61-
});
54+
try (
55+
WeaviateClient client = WeaviateClient.connectToCustom(conn -> {
56+
return conn
57+
.scheme("http")
58+
.httpHost(weaviate.getHost())
59+
.httpPort(weaviate.getMappedPort(8080))
60+
.grpcHost(weaviate.getHost())
61+
.grpcPort(weaviate.getMappedPort(50051));
62+
})
63+
) {
64+
InstanceMetadata meta = client.meta();
65+
assertThat(meta.version()).isEqualTo("1.32.0");
66+
Map<String, Object> modules = meta.modules();
67+
assertThat(modules)
68+
.isNotNull()
69+
.asInstanceOf(InstanceOfAssertFactories.map(String.class, Object.class))
70+
.extracting(Map::keySet)
71+
.satisfies(keys -> {
72+
assertThat(keys.size()).isEqualTo(enableModules.size());
73+
keys.forEach(key -> assertThat(enableModules.contains(key)).isTrue());
74+
});
75+
}
6276
}
6377
}
6478
}

0 commit comments

Comments
 (0)