Skip to content

Commit 9616890

Browse files
committed
Fix some more tests
1 parent 4a140c1 commit 9616890

File tree

16 files changed

+21
-83
lines changed

16 files changed

+21
-83
lines changed

test/external-modules/multi-project/build.gradle

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,4 +20,5 @@ tasks.withType(StandaloneRestIntegTestTask).configureEach {
2020

2121
tasks.named("javaRestTest").configure {
2222
enabled = buildParams.snapshotBuild
23+
systemProperty "tests.multi_project.enabled", true
2324
}

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/action/admin/cluster/stats/ClusterStatsMultiProjectIT.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,8 +35,6 @@ public class ClusterStatsMultiProjectIT extends MultiProjectRestTestCase {
3535
public static ElasticsearchCluster cluster = ElasticsearchCluster.local()
3636
.nodes(1)
3737
.distribution(DistributionType.INTEG_TEST)
38-
.module("test-multi-project")
39-
.setting("test.multi_project.enabled", "true")
4038
.setting("xpack.security.enabled", "true")
4139
.user("admin", PASSWORD)
4240
.build();

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/action/admin/indices/IndexMultiProjectCRUDIT.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,6 @@
1919
import org.elasticsearch.multiproject.MultiProjectRestTestCase;
2020
import org.elasticsearch.test.cluster.ElasticsearchCluster;
2121
import org.elasticsearch.test.cluster.local.LocalClusterSpecBuilder;
22-
import org.elasticsearch.test.cluster.local.distribution.DistributionType;
2322
import org.elasticsearch.xcontent.ObjectPath;
2423
import org.elasticsearch.xcontent.json.JsonXContent;
2524
import org.junit.ClassRule;
@@ -46,9 +45,6 @@ public class IndexMultiProjectCRUDIT extends MultiProjectRestTestCase {
4645
private static ElasticsearchCluster createCluster() {
4746
LocalClusterSpecBuilder<ElasticsearchCluster> clusterBuilder = ElasticsearchCluster.local()
4847
.nodes(NODE_NUM)
49-
.distribution(DistributionType.INTEG_TEST) // TODO multi-project: make this test suite work under the default distrib
50-
.module("test-multi-project")
51-
.setting("test.multi_project.enabled", "true")
5248
.setting("xpack.security.enabled", "false") // TODO multi-project: make this test suite work with Security enabled
5349
.setting("xpack.ml.enabled", "false"); // TODO multi-project: make this test suite work with ML enabled
5450
return clusterBuilder.build();

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/action/index/IndexDocumentMultiProjectIT.java

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,6 @@
1717
import org.elasticsearch.multiproject.MultiProjectRestTestCase;
1818
import org.elasticsearch.test.cluster.ElasticsearchCluster;
1919
import org.elasticsearch.test.cluster.local.LocalClusterSpecBuilder;
20-
import org.elasticsearch.test.cluster.local.distribution.DistributionType;
2120
import org.junit.ClassRule;
2221
import org.junit.Rule;
2322
import org.junit.rules.TestName;
@@ -42,9 +41,6 @@ public class IndexDocumentMultiProjectIT extends MultiProjectRestTestCase {
4241
private static ElasticsearchCluster createCluster() {
4342
LocalClusterSpecBuilder<ElasticsearchCluster> clusterBuilder = ElasticsearchCluster.local()
4443
.nodes(NODE_NUM)
45-
.distribution(DistributionType.INTEG_TEST) // TODO multi-project: make this test suite work under the default distrib
46-
.module("test-multi-project")
47-
.setting("test.multi_project.enabled", "true")
4844
.setting("xpack.security.enabled", "false") // TODO multi-project: make this test suite work with Security enabled
4945
.setting("xpack.ml.enabled", "false"); // TODO multi-project: make this test suite work with ML enabled
5046
return clusterBuilder.build();

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/multiproject/MultiProjectClusterStateActionIT.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@ public class MultiProjectClusterStateActionIT extends MultiProjectRestTestCase {
2626
@ClassRule
2727
public static ElasticsearchCluster CLUSTER = ElasticsearchCluster.local()
2828
.distribution(DistributionType.DEFAULT)
29-
.setting("test.multi_project.enabled", "true")
3029
.setting("xpack.security.http.ssl.enabled", "false")
3130
.setting("xpack.security.enabled", "false")
3231
.build();

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/multiproject/MultiProjectRestTestCase.java

Lines changed: 12 additions & 57 deletions
Original file line numberDiff line numberDiff line change
@@ -11,77 +11,32 @@
1111

1212
import org.elasticsearch.client.Request;
1313
import org.elasticsearch.client.RequestOptions;
14-
import org.elasticsearch.client.Response;
15-
import org.elasticsearch.client.ResponseException;
16-
import org.elasticsearch.cluster.metadata.Metadata;
1714
import org.elasticsearch.tasks.Task;
1815
import org.elasticsearch.test.rest.ESRestTestCase;
19-
import org.elasticsearch.xcontent.ObjectPath;
2016
import org.junit.After;
2117

2218
import java.io.IOException;
23-
import java.util.List;
24-
import java.util.Map;
25-
import java.util.Set;
26-
import java.util.stream.Collectors;
2719

2820
public abstract class MultiProjectRestTestCase extends ESRestTestCase {
29-
protected static Request setRequestProjectId(Request request, String projectId) {
30-
RequestOptions.Builder options = request.getOptions().toBuilder();
31-
options.removeHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER);
32-
options.addHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER, projectId);
33-
request.setOptions(options);
34-
return request;
35-
}
36-
37-
protected static void clearRequestProjectId(Request request) {
38-
RequestOptions options = request.getOptions();
39-
if (options.containsHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER)) {
40-
request.setOptions(options.toBuilder().removeHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER).build());
41-
}
42-
}
43-
44-
protected void createProject(String projectId) throws IOException {
45-
Request request = new Request("PUT", "/_project/" + projectId);
46-
try {
47-
Response response = adminClient().performRequest(request);
48-
assertOK(response);
49-
logger.info("Created project {} : {}", projectId, response.getStatusLine());
50-
} catch (ResponseException e) {
51-
logger.error("Failed to create project: {}", projectId);
52-
throw e;
53-
}
54-
}
55-
56-
protected void deleteProject(String projectId) throws IOException {
57-
final Request request = new Request("DELETE", "/_project/" + projectId);
58-
try {
59-
final Response response = adminClient().performRequest(request);
60-
logger.info("Deleted project {} : {}", projectId, response.getStatusLine());
61-
} catch (ResponseException e) {
62-
logger.error("Failed to delete project: {}", projectId);
63-
throw e;
64-
}
65-
}
6621

67-
protected Set<String> listProjects() throws IOException {
68-
final Request request = new Request("GET", "/_cluster/state/metadata?multi_project");
69-
final Response response = adminClient().performRequest(request);
70-
final List<Map<String, ?>> projects = ObjectPath.eval("metadata.projects", entityAsMap(response));
71-
return projects.stream().map(m -> String.valueOf(m.get("id"))).collect(Collectors.toSet());
22+
@Override
23+
protected boolean shouldConfigureProjects() {
24+
return false;
7225
}
7326

7427
@After
7528
public void removeNonDefaultProjects() throws IOException {
7629
if (preserveClusterUponCompletion() == false) {
77-
final Set<String> projects = listProjects();
78-
logger.info("Removing non-default projects from {}", projects);
79-
for (String projectId : projects) {
80-
if (projectId.equals(Metadata.DEFAULT_PROJECT_ID.id()) == false) {
81-
deleteProject(projectId);
82-
}
83-
}
30+
cleanUpProjects();
8431
}
8532
}
8633

34+
protected static Request setRequestProjectId(Request request, String projectId) {
35+
RequestOptions.Builder options = request.getOptions().toBuilder();
36+
options.removeHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER);
37+
options.addHeader(Task.X_ELASTIC_PROJECT_ID_HTTP_HEADER, projectId);
38+
request.setOptions(options);
39+
return request;
40+
}
41+
8742
}

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/multiproject/MultiProjectRestartIT.java

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,6 @@ public class MultiProjectRestartIT extends MultiProjectRestTestCase {
2424
@ClassRule
2525
public static ElasticsearchCluster CLUSTER = ElasticsearchCluster.local()
2626
.distribution(DistributionType.DEFAULT)
27-
.setting("test.multi_project.enabled", "true")
2827
.setting("xpack.security.http.ssl.enabled", "false")
2928
.setting("xpack.security.enabled", "false")
3029
.build();

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/multiproject/action/ProjectCrudActionIT.java

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,9 @@
1212
import org.elasticsearch.client.Request;
1313
import org.elasticsearch.client.Response;
1414
import org.elasticsearch.client.ResponseException;
15+
import org.elasticsearch.multiproject.MultiProjectRestTestCase;
1516
import org.elasticsearch.test.cluster.ElasticsearchCluster;
1617
import org.elasticsearch.test.cluster.local.distribution.DistributionType;
17-
import org.elasticsearch.test.rest.ESRestTestCase;
1818
import org.elasticsearch.test.rest.ObjectPath;
1919
import org.junit.ClassRule;
2020

@@ -31,12 +31,11 @@
3131
import static org.hamcrest.CoreMatchers.hasItem;
3232
import static org.hamcrest.CoreMatchers.not;
3333

34-
public class ProjectCrudActionIT extends ESRestTestCase {
34+
public class ProjectCrudActionIT extends MultiProjectRestTestCase {
3535

3636
@ClassRule
3737
public static ElasticsearchCluster CLUSTER = ElasticsearchCluster.local()
3838
.distribution(DistributionType.DEFAULT)
39-
.setting("test.multi_project.enabled", "true")
4039
.setting("xpack.security.enabled", "false")
4140
.build();
4241

test/external-modules/multi-project/src/javaRestTest/java/org/elasticsearch/xpack/security/SecurityRolesMultiProjectIT.java

Lines changed: 0 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -41,8 +41,6 @@ public class SecurityRolesMultiProjectIT extends MultiProjectRestTestCase {
4141
public static ElasticsearchCluster cluster = ElasticsearchCluster.local()
4242
.nodes(1)
4343
.distribution(DistributionType.DEFAULT)
44-
.module("test-multi-project")
45-
.setting("test.multi_project.enabled", "true")
4644
.setting("xpack.security.enabled", "true")
4745
.user("admin", PASSWORD)
4846
.rolesFile(rolesFile)

test/framework/src/main/java/org/elasticsearch/test/rest/ESRestTestCase.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -369,7 +369,7 @@ public static void initializeProjectIds() {
369369
// The active project-id is slightly longer, and has a fixed prefix so that it's easier to pick in error messages etc.
370370
activeProject = "active00" + randomAlphaOfLength(8).toLowerCase(Locale.ROOT);
371371
extraProjects = randomSet(1, 3, () -> randomAlphaOfLength(12).toLowerCase(Locale.ROOT));
372-
multiProjectEnabled = Boolean.parseBoolean(System.getProperty("test.multi_project.enabled"));
372+
multiProjectEnabled = Boolean.parseBoolean(System.getProperty("tests.multi_project.enabled"));
373373
}
374374

375375
@Before

0 commit comments

Comments
 (0)