Skip to content

Commit df91237

Browse files
committed
Revert "Change HLRC CCR response tests to use AbstractResponseTestCase base class. (#40257)"
This reverts commit 675bf3c.
1 parent 832525a commit df91237

File tree

6 files changed

+616
-368
lines changed

6 files changed

+616
-368
lines changed

client/rest-high-level/build.gradle

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -64,9 +64,6 @@ dependencies {
6464
testCompile "org.hamcrest:hamcrest-all:${versions.hamcrest}"
6565
//this is needed to make RestHighLevelClientTests#testApiNamingConventions work from IDEs
6666
testCompile "org.elasticsearch:rest-api-spec:${version}"
67-
// Needed for serialization tests:
68-
// (In order to serialize a server side class to a client side class or the other way around)
69-
testCompile "org.elasticsearch.plugin:x-pack-core:${version}"
7067

7168
restSpec "org.elasticsearch:rest-api-spec:${version}"
7269
}

client/rest-high-level/src/test/java/org/elasticsearch/client/ccr/CcrStatsResponseTests.java

Lines changed: 290 additions & 121 deletions
Large diffs are not rendered by default.

client/rest-high-level/src/test/java/org/elasticsearch/client/ccr/FollowInfoResponseTests.java

Lines changed: 41 additions & 71 deletions
Original file line numberDiff line numberDiff line change
@@ -19,89 +19,59 @@
1919

2020
package org.elasticsearch.client.ccr;
2121

22-
import org.elasticsearch.client.AbstractResponseTestCase;
23-
import org.elasticsearch.common.unit.ByteSizeValue;
24-
import org.elasticsearch.common.unit.TimeValue;
25-
import org.elasticsearch.common.xcontent.XContentParser;
26-
import org.elasticsearch.xpack.core.ccr.action.FollowInfoAction;
27-
import org.elasticsearch.xpack.core.ccr.action.FollowParameters;
22+
import org.elasticsearch.client.ccr.FollowInfoResponse.FollowerInfo;
23+
import org.elasticsearch.common.xcontent.ToXContent;
24+
import org.elasticsearch.common.xcontent.XContentBuilder;
25+
import org.elasticsearch.test.ESTestCase;
2826

2927
import java.io.IOException;
3028
import java.util.ArrayList;
3129
import java.util.List;
32-
import java.util.Locale;
3330

34-
import static org.hamcrest.Matchers.equalTo;
35-
import static org.hamcrest.Matchers.nullValue;
31+
import static org.elasticsearch.test.AbstractXContentTestCase.xContentTester;
3632

37-
public class FollowInfoResponseTests extends AbstractResponseTestCase<FollowInfoAction.Response, FollowInfoResponse> {
33+
public class FollowInfoResponseTests extends ESTestCase {
3834

39-
@Override
40-
protected FollowInfoAction.Response createServerTestInstance() {
41-
int numInfos = randomIntBetween(0, 32);
42-
List<FollowInfoAction.Response.FollowerInfo> infos = new ArrayList<>(numInfos);
43-
for (int i = 0; i < numInfos; i++) {
44-
FollowParameters followParameters = null;
45-
if (randomBoolean()) {
46-
followParameters = randomFollowParameters();
47-
}
48-
49-
infos.add(new FollowInfoAction.Response.FollowerInfo(randomAlphaOfLength(4), randomAlphaOfLength(4), randomAlphaOfLength(4),
50-
randomFrom(FollowInfoAction.Response.Status.values()), followParameters));
51-
}
52-
return new FollowInfoAction.Response(infos);
53-
}
54-
55-
static FollowParameters randomFollowParameters() {
56-
FollowParameters followParameters = new FollowParameters();
57-
followParameters.setMaxOutstandingReadRequests(randomIntBetween(0, Integer.MAX_VALUE));
58-
followParameters.setMaxOutstandingWriteRequests(randomIntBetween(0, Integer.MAX_VALUE));
59-
followParameters.setMaxReadRequestOperationCount(randomIntBetween(0, Integer.MAX_VALUE));
60-
followParameters.setMaxWriteRequestOperationCount(randomIntBetween(0, Integer.MAX_VALUE));
61-
followParameters.setMaxReadRequestSize(new ByteSizeValue(randomNonNegativeLong()));
62-
followParameters.setMaxWriteRequestSize(new ByteSizeValue(randomNonNegativeLong()));
63-
followParameters.setMaxWriteBufferCount(randomIntBetween(0, Integer.MAX_VALUE));
64-
followParameters.setMaxWriteBufferSize(new ByteSizeValue(randomNonNegativeLong()));
65-
followParameters.setMaxRetryDelay(new TimeValue(randomNonNegativeLong()));
66-
followParameters.setReadPollTimeout(new TimeValue(randomNonNegativeLong()));
67-
return followParameters;
35+
public void testFromXContent() throws IOException {
36+
xContentTester(this::createParser,
37+
FollowInfoResponseTests::createTestInstance,
38+
FollowInfoResponseTests::toXContent,
39+
FollowInfoResponse::fromXContent)
40+
.supportsUnknownFields(true)
41+
.test();
6842
}
6943

70-
@Override
71-
protected FollowInfoResponse doParseToClientInstance(XContentParser parser) throws IOException {
72-
return FollowInfoResponse.fromXContent(parser);
44+
private static void toXContent(FollowInfoResponse response, XContentBuilder builder) throws IOException {
45+
builder.startObject();
46+
builder.startArray(FollowInfoResponse.FOLLOWER_INDICES_FIELD.getPreferredName());
47+
for (FollowerInfo info : response.getInfos()) {
48+
builder.startObject();
49+
builder.field(FollowerInfo.FOLLOWER_INDEX_FIELD.getPreferredName(), info.getFollowerIndex());
50+
builder.field(FollowerInfo.REMOTE_CLUSTER_FIELD.getPreferredName(), info.getRemoteCluster());
51+
builder.field(FollowerInfo.LEADER_INDEX_FIELD.getPreferredName(), info.getLeaderIndex());
52+
builder.field(FollowerInfo.STATUS_FIELD.getPreferredName(), info.getStatus().getName());
53+
if (info.getParameters() != null) {
54+
builder.startObject(FollowerInfo.PARAMETERS_FIELD.getPreferredName());
55+
{
56+
info.getParameters().toXContentFragment(builder, ToXContent.EMPTY_PARAMS);
57+
}
58+
builder.endObject();
59+
}
60+
builder.endObject();
61+
}
62+
builder.endArray();
63+
builder.endObject();
7364
}
7465

75-
@Override
76-
protected void assertInstances(FollowInfoAction.Response serverTestInstance, FollowInfoResponse clientInstance) {
77-
assertThat(serverTestInstance.getFollowInfos().size(), equalTo(clientInstance.getInfos().size()));
78-
for (int i = 0; i < serverTestInstance.getFollowInfos().size(); i++) {
79-
FollowInfoAction.Response.FollowerInfo serverFollowInfo = serverTestInstance.getFollowInfos().get(i);
80-
FollowInfoResponse.FollowerInfo clientFollowerInfo = clientInstance.getInfos().get(i);
81-
82-
assertThat(serverFollowInfo.getRemoteCluster(), equalTo(clientFollowerInfo.getRemoteCluster()));
83-
assertThat(serverFollowInfo.getLeaderIndex(), equalTo(clientFollowerInfo.getLeaderIndex()));
84-
assertThat(serverFollowInfo.getFollowerIndex(), equalTo(clientFollowerInfo.getFollowerIndex()));
85-
assertThat(serverFollowInfo.getStatus().toString().toLowerCase(Locale.ROOT),
86-
equalTo(clientFollowerInfo.getStatus().getName().toLowerCase(Locale.ROOT)));
87-
88-
FollowParameters serverParams = serverFollowInfo.getParameters();
89-
FollowConfig clientParams = clientFollowerInfo.getParameters();
90-
if (serverParams != null) {
91-
assertThat(serverParams.getMaxReadRequestOperationCount(), equalTo(clientParams.getMaxReadRequestOperationCount()));
92-
assertThat(serverParams.getMaxWriteRequestOperationCount(), equalTo(clientParams.getMaxWriteRequestOperationCount()));
93-
assertThat(serverParams.getMaxOutstandingReadRequests(), equalTo(clientParams.getMaxOutstandingReadRequests()));
94-
assertThat(serverParams.getMaxOutstandingWriteRequests(), equalTo(clientParams.getMaxOutstandingWriteRequests()));
95-
assertThat(serverParams.getMaxReadRequestSize(), equalTo(clientParams.getMaxReadRequestSize()));
96-
assertThat(serverParams.getMaxWriteRequestSize(), equalTo(clientParams.getMaxWriteRequestSize()));
97-
assertThat(serverParams.getMaxWriteBufferCount(), equalTo(clientParams.getMaxWriteBufferCount()));
98-
assertThat(serverParams.getMaxWriteBufferSize(), equalTo(clientParams.getMaxWriteBufferSize()));
99-
assertThat(serverParams.getMaxRetryDelay(), equalTo(clientParams.getMaxRetryDelay()));
100-
assertThat(serverParams.getReadPollTimeout(), equalTo(clientParams.getReadPollTimeout()));
101-
} else {
102-
assertThat(clientParams, nullValue());
103-
}
66+
private static FollowInfoResponse createTestInstance() {
67+
int numInfos = randomIntBetween(0, 64);
68+
List<FollowerInfo> infos = new ArrayList<>(numInfos);
69+
for (int i = 0; i < numInfos; i++) {
70+
FollowInfoResponse.Status status = randomFrom(FollowInfoResponse.Status.values());
71+
FollowConfig followConfig = randomBoolean() ? FollowConfigTests.createTestInstance() : null;
72+
infos.add(new FollowerInfo(randomAlphaOfLength(4), randomAlphaOfLength(4), randomAlphaOfLength(4), status, followConfig));
10473
}
74+
return new FollowInfoResponse(infos);
10575
}
10676

10777
}

0 commit comments

Comments
 (0)