Skip to content

Commit 5572777

Browse files
[ML] Fixing streaming tests locale issue (#118481)
* Fixing the string locale * Missing a toUpper
1 parent 9837e78 commit 5572777

File tree

4 files changed

+9
-7
lines changed

4 files changed

+9
-7
lines changed

muted-tests.yml

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -315,9 +315,6 @@ tests:
315315
- class: org.elasticsearch.xpack.test.rest.XPackRestIT
316316
method: test {p0=migrate/10_reindex/Test Reindex With Unsupported Mode}
317317
issue: https://github.com/elastic/elasticsearch/issues/118273
318-
- class: org.elasticsearch.xpack.inference.InferenceCrudIT
319-
method: testUnifiedCompletionInference
320-
issue: https://github.com/elastic/elasticsearch/issues/118405
321318
- class: org.elasticsearch.xpack.security.operator.OperatorPrivilegesIT
322319
method: testEveryActionIsEitherOperatorOnlyOrNonOperator
323320
issue: https://github.com/elastic/elasticsearch/issues/118220

test/framework/src/main/java/org/elasticsearch/test/ESTestCase.java

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1210,6 +1210,7 @@ public static String randomAlphaOfLength(int codeUnits) {
12101210

12111211
/**
12121212
* Generate a random string containing only alphanumeric characters.
1213+
* <b>The locale for the string is {@link Locale#ROOT}.</b>
12131214
* @param length the length of the string to generate
12141215
* @return the generated string
12151216
*/

x-pack/plugin/inference/qa/inference-service-tests/src/javaRestTest/java/org/elasticsearch/xpack/inference/InferenceCrudIT.java

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,7 @@
2424
import java.util.Arrays;
2525
import java.util.Iterator;
2626
import java.util.List;
27+
import java.util.Locale;
2728
import java.util.Map;
2829
import java.util.Objects;
2930
import java.util.Set;
@@ -471,7 +472,7 @@ public void testSupportedStream() throws Exception {
471472
var events = streamInferOnMockService(modelId, TaskType.COMPLETION, input);
472473

473474
var expectedResponses = Stream.concat(
474-
input.stream().map(String::toUpperCase).map(str -> "{\"completion\":[{\"delta\":\"" + str + "\"}]}"),
475+
input.stream().map(s -> s.toUpperCase(Locale.ROOT)).map(str -> "{\"completion\":[{\"delta\":\"" + str + "\"}]}"),
475476
Stream.of("[DONE]")
476477
).iterator();
477478
assertThat(events.size(), equalTo((input.size() + 1) * 2));
@@ -510,7 +511,9 @@ public void testUnifiedCompletionInference() throws Exception {
510511
}
511512

512513
private static Iterator<String> expectedResultsIterator(List<String> input) {
513-
return Stream.concat(input.stream().map(String::toUpperCase).map(InferenceCrudIT::expectedResult), Stream.of("[DONE]")).iterator();
514+
// The Locale needs to be ROOT to match what the test service is going to respond with
515+
return Stream.concat(input.stream().map(s -> s.toUpperCase(Locale.ROOT)).map(InferenceCrudIT::expectedResult), Stream.of("[DONE]"))
516+
.iterator();
514517
}
515518

516519
private static String expectedResult(String input) {

x-pack/plugin/inference/qa/test-service-plugin/src/main/java/org/elasticsearch/xpack/inference/mock/TestStreamingCompletionServiceExtension.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@
4343
import java.util.EnumSet;
4444
import java.util.HashMap;
4545
import java.util.List;
46+
import java.util.Locale;
4647
import java.util.Map;
4748
import java.util.Set;
4849
import java.util.concurrent.Flow;
@@ -142,7 +143,7 @@ public void unifiedCompletionInfer(
142143
}
143144

144145
private StreamingChatCompletionResults makeResults(List<String> input) {
145-
var responseIter = input.stream().map(String::toUpperCase).iterator();
146+
var responseIter = input.stream().map(s -> s.toUpperCase(Locale.ROOT)).iterator();
146147
return new StreamingChatCompletionResults(subscriber -> {
147148
subscriber.onSubscribe(new Flow.Subscription() {
148149
@Override
@@ -173,7 +174,7 @@ private ChunkedToXContent completionChunk(String delta) {
173174
}
174175

175176
private StreamingUnifiedChatCompletionResults makeUnifiedResults(UnifiedCompletionRequest request) {
176-
var responseIter = request.messages().stream().map(message -> message.content().toString().toUpperCase()).iterator();
177+
var responseIter = request.messages().stream().map(message -> message.content().toString().toUpperCase(Locale.ROOT)).iterator();
177178
return new StreamingUnifiedChatCompletionResults(subscriber -> {
178179
subscriber.onSubscribe(new Flow.Subscription() {
179180
@Override

0 commit comments

Comments
 (0)