Skip to content

Commit 79f181c

Browse files
authored
Merge pull request #1604 from quarkiverse/azure-tests-fix
Improve Azure streaming test
2 parents 6178a95 + 80b4db1 commit 79f181c

File tree

1 file changed

+4
-30
lines changed

1 file changed

+4
-30
lines changed

model-providers/openai/azure-openai/deployment/src/test/java/io/quarkiverse/langchain4j/azure/openai/test/AzureOpenAiStreamingChatModelTest.java

Lines changed: 4 additions & 30 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
package io.quarkiverse.langchain4j.azure.openai.test;
22

33
import static com.github.tomakehurst.wiremock.client.WireMock.*;
4-
import static com.github.tomakehurst.wiremock.core.WireMockConfiguration.options;
54
import static org.assertj.core.api.Assertions.assertThat;
65
import static org.awaitility.Awaitility.await;
76
import static org.junit.jupiter.api.Assertions.fail;
@@ -14,53 +13,28 @@
1413

1514
import org.jboss.shrinkwrap.api.ShrinkWrap;
1615
import org.jboss.shrinkwrap.api.spec.JavaArchive;
17-
import org.junit.jupiter.api.AfterAll;
18-
import org.junit.jupiter.api.BeforeAll;
19-
import org.junit.jupiter.api.BeforeEach;
2016
import org.junit.jupiter.api.Test;
2117
import org.junit.jupiter.api.extension.RegisterExtension;
2218

23-
import com.github.tomakehurst.wiremock.WireMockServer;
24-
2519
import dev.langchain4j.data.message.AiMessage;
2620
import dev.langchain4j.model.chat.StreamingChatModel;
2721
import dev.langchain4j.model.chat.response.ChatResponse;
2822
import dev.langchain4j.model.chat.response.StreamingChatResponseHandler;
2923
import io.quarkiverse.langchain4j.azure.openai.AzureOpenAiStreamingChatModel;
30-
import io.quarkiverse.langchain4j.openai.testing.internal.OpenAiBaseTest;
24+
import io.quarkiverse.langchain4j.testing.internal.WiremockAware;
3125
import io.quarkus.arc.ClientProxy;
3226
import io.quarkus.test.QuarkusUnitTest;
3327

34-
public class AzureOpenAiStreamingChatModelTest extends OpenAiBaseTest {
35-
36-
private static final int WIREMOCK_PORT = 8089;
37-
private static WireMockServer wireMockServer;
28+
public class AzureOpenAiStreamingChatModelTest extends WiremockAware {
3829

3930
@RegisterExtension
4031
static final QuarkusUnitTest unitTest = new QuarkusUnitTest()
4132
.setArchiveProducer(() -> ShrinkWrap.create(JavaArchive.class))
4233
.overrideRuntimeConfigKey("quarkus.langchain4j.azure-openai.api-key", "api-key")
43-
.overrideRuntimeConfigKey("quarkus.langchain4j.azure-openai.endpoint",
44-
"http://localhost:%d".formatted(WIREMOCK_PORT))
34+
.overrideRuntimeConfigKey("quarkus.langchain4j.azure-openai.endpoint", WiremockAware.wiremockUrlForConfig())
4535
.overrideRuntimeConfigKey("quarkus.langchain4j.azure-openai.log-requests", "true")
4636
.overrideRuntimeConfigKey("quarkus.langchain4j.azure-openai.log-responses", "true");
4737

48-
@BeforeAll
49-
static void beforeAll() {
50-
wireMockServer = new WireMockServer(options().port(WIREMOCK_PORT));
51-
wireMockServer.start();
52-
}
53-
54-
@AfterAll
55-
static void afterAll() {
56-
wireMockServer.stop();
57-
}
58-
59-
@BeforeEach
60-
void setup() {
61-
wireMockServer.resetAll();
62-
}
63-
6438
@Inject
6539
StreamingChatModel streamingChatModel;
6640

@@ -86,7 +60,7 @@ void test() {
8660
data: [DONE]
8761
""";
8862

89-
wireMockServer.stubFor(
63+
wiremock().register(
9064
post(urlMatching("/chat/completions.*"))
9165
.willReturn(okForContentType(MediaType.SERVER_SENT_EVENTS, eventStream)));
9266
var streamingResponse = new AtomicReference<AiMessage>();

0 commit comments

Comments
 (0)