Skip to content

Commit 1f50407

Browse files
authored
[Inference API] Extend AbstractBWCWireSerializingTestCase for AzureAiStudioChatCompletionServiceSettingsTests (#109919)
1 parent e421a29 commit 1f50407

File tree

1 file changed

+40
-2
lines changed

1 file changed

+40
-2
lines changed

x-pack/plugin/inference/src/test/java/org/elasticsearch/xpack/inference/services/azureaistudio/completion/AzureAiStudioChatCompletionServiceSettingsTests.java

Lines changed: 40 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -7,15 +7,18 @@
77

88
package org.elasticsearch.xpack.inference.services.azureaistudio.completion;
99

10+
import org.elasticsearch.TransportVersion;
1011
import org.elasticsearch.common.Strings;
11-
import org.elasticsearch.test.ESTestCase;
12+
import org.elasticsearch.common.io.stream.Writeable;
1213
import org.elasticsearch.xcontent.XContentBuilder;
1314
import org.elasticsearch.xcontent.XContentFactory;
1415
import org.elasticsearch.xcontent.XContentType;
16+
import org.elasticsearch.xpack.core.ml.AbstractBWCWireSerializationTestCase;
1517
import org.elasticsearch.xpack.inference.services.ConfigurationParseContext;
1618
import org.elasticsearch.xpack.inference.services.azureaistudio.AzureAiStudioEndpointType;
1719
import org.elasticsearch.xpack.inference.services.azureaistudio.AzureAiStudioProvider;
1820
import org.elasticsearch.xpack.inference.services.settings.RateLimitSettings;
21+
import org.elasticsearch.xpack.inference.services.settings.RateLimitSettingsTests;
1922
import org.hamcrest.CoreMatchers;
2023

2124
import java.io.IOException;
@@ -27,7 +30,8 @@
2730
import static org.elasticsearch.xpack.inference.services.azureaistudio.AzureAiStudioConstants.TARGET_FIELD;
2831
import static org.hamcrest.Matchers.is;
2932

30-
public class AzureAiStudioChatCompletionServiceSettingsTests extends ESTestCase {
33+
public class AzureAiStudioChatCompletionServiceSettingsTests extends AbstractBWCWireSerializationTestCase<
34+
AzureAiStudioChatCompletionServiceSettings> {
3135
public void testFromMap_Request_CreatesSettingsCorrectly() {
3236
var target = "http://sometarget.local";
3337
var provider = "openai";
@@ -119,4 +123,38 @@ public void testToFilteredXContent_WritesAllValues() throws IOException {
119123
public static HashMap<String, Object> createRequestSettingsMap(String target, String provider, String endpointType) {
120124
return new HashMap<>(Map.of(TARGET_FIELD, target, PROVIDER_FIELD, provider, ENDPOINT_TYPE_FIELD, endpointType));
121125
}
126+
127+
@Override
128+
protected Writeable.Reader<AzureAiStudioChatCompletionServiceSettings> instanceReader() {
129+
return AzureAiStudioChatCompletionServiceSettings::new;
130+
}
131+
132+
@Override
133+
protected AzureAiStudioChatCompletionServiceSettings createTestInstance() {
134+
return createRandom();
135+
}
136+
137+
@Override
138+
protected AzureAiStudioChatCompletionServiceSettings mutateInstance(AzureAiStudioChatCompletionServiceSettings instance)
139+
throws IOException {
140+
return randomValueOtherThan(instance, AzureAiStudioChatCompletionServiceSettingsTests::createRandom);
141+
}
142+
143+
@Override
144+
protected AzureAiStudioChatCompletionServiceSettings mutateInstanceForVersion(
145+
AzureAiStudioChatCompletionServiceSettings instance,
146+
TransportVersion version
147+
) {
148+
return instance;
149+
}
150+
151+
private static AzureAiStudioChatCompletionServiceSettings createRandom() {
152+
return new AzureAiStudioChatCompletionServiceSettings(
153+
randomAlphaOfLength(10),
154+
randomFrom(AzureAiStudioProvider.values()),
155+
randomFrom(AzureAiStudioEndpointType.values()),
156+
RateLimitSettingsTests.createRandom()
157+
);
158+
}
159+
122160
}

0 commit comments

Comments
 (0)