Add shorthand for prepareIndex to test infrastructure (#101187)

Same as #101175, shorten `client().prepareIndex(index)` and
`client().prepareIndex().setIndex(index)` via a test utility.
Saves lots of code now and sets up some follow-up simplifcations.
This commit is contained in:
Armin Braun 2023-11-23 15:47:36 +01:00 committed by GitHub
parent 05ead7ec59
commit cdc83ad29b
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
410 changed files with 3050 additions and 4001 deletions

View file

@ -78,7 +78,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
public void testBasic() throws Exception {
createIndex("test");
ensureGreen("test");
client().prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
assertResponse(buildRequest("doc['foo'] + 1"), rsp -> {
assertEquals(1, rsp.getHits().getTotalHits().value);
assertEquals(5.0, rsp.getHits().getAt(0).field("foo").getValue(), 0.0D);
@ -88,7 +88,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
public void testFunction() throws Exception {
createIndex("test");
ensureGreen("test");
client().prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
assertNoFailuresAndResponse(buildRequest("doc['foo'] + abs(1)"), rsp -> {
assertEquals(1, rsp.getHits().getTotalHits().value);
assertEquals(5.0, rsp.getHits().getAt(0).field("foo").getValue(), 0.0D);
@ -98,7 +98,8 @@ public class MoreExpressionIT extends ESIntegTestCase {
public void testBasicUsingDotValue() throws Exception {
createIndex("test");
ensureGreen("test");
client().prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 4).setRefreshPolicy(IMMEDIATE).get();
assertResponse(buildRequest("doc['foo'].value + 1"), rsp -> {
assertEquals(1, rsp.getHits().getTotalHits().value);
assertEquals(5.0, rsp.getHits().getAt(0).field("foo").getValue(), 0.0D);
@ -110,9 +111,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("text", "hello goodbye"),
client().prepareIndex("test").setId("2").setSource("text", "hello hello hello goodbye"),
client().prepareIndex("test").setId("3").setSource("text", "hello hello goodebye")
prepareIndex("test").setId("1").setSource("text", "hello goodbye"),
prepareIndex("test").setId("2").setSource("text", "hello hello hello goodbye"),
prepareIndex("test").setId("3").setSource("text", "hello hello goodebye")
);
ScriptScoreFunctionBuilder score = ScoreFunctionBuilders.scriptFunction(
new Script(ScriptType.INLINE, "expression", "1 / _score", Collections.emptyMap())
@ -142,8 +143,8 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "date0", "2015-04-28T04:02:07Z", "date1", "1985-09-01T23:11:01Z"),
client().prepareIndex("test").setId("2").setSource("id", 2, "date0", "2013-12-25T11:56:45Z", "date1", "1983-10-13T23:15:00Z")
prepareIndex("test").setId("1").setSource("id", 1, "date0", "2015-04-28T04:02:07Z", "date1", "1985-09-01T23:11:01Z"),
prepareIndex("test").setId("2").setSource("id", 2, "date0", "2013-12-25T11:56:45Z", "date1", "1983-10-13T23:15:00Z")
);
assertResponse(buildRequest("doc['date0'].getSeconds() - doc['date0'].getMinutes()"), rsp -> {
assertEquals(2, rsp.getHits().getTotalHits().value);
@ -176,8 +177,8 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "date0", "2015-04-28T04:02:07Z", "date1", "1985-09-01T23:11:01Z"),
client().prepareIndex("test").setId("2").setSource("id", 2, "date0", "2013-12-25T11:56:45Z", "date1", "1983-10-13T23:15:00Z")
prepareIndex("test").setId("1").setSource("id", 1, "date0", "2015-04-28T04:02:07Z", "date1", "1985-09-01T23:11:01Z"),
prepareIndex("test").setId("2").setSource("id", 2, "date0", "2013-12-25T11:56:45Z", "date1", "1983-10-13T23:15:00Z")
);
assertResponse(buildRequest("doc['date0'].date.secondOfMinute - doc['date0'].date.minuteOfHour"), rsp -> {
assertEquals(2, rsp.getHits().getTotalHits().value);
@ -229,9 +230,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource(doc1),
client().prepareIndex("test").setId("2").setSource(doc2),
client().prepareIndex("test").setId("3").setSource(doc3)
prepareIndex("test").setId("1").setSource(doc1),
prepareIndex("test").setId("2").setSource(doc2),
prepareIndex("test").setId("3").setSource(doc3)
);
assertNoFailuresAndResponse(buildRequest("doc['double0'].count() + doc['double1'].count()"), rsp -> {
@ -312,7 +313,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
public void testInvalidDateMethodCall() throws Exception {
ElasticsearchAssertions.assertAcked(prepareCreate("test").setMapping("double", "type=double"));
ensureGreen("test");
indexRandom(true, client().prepareIndex("test").setId("1").setSource("double", "178000000.0"));
indexRandom(true, prepareIndex("test").setId("1").setSource("double", "178000000.0"));
try {
buildRequest("doc['double'].getYear()").get();
fail();
@ -335,8 +336,8 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "x", 4),
client().prepareIndex("test").setId("2").setSource("id", 2, "y", 2)
prepareIndex("test").setId("1").setSource("id", 1, "x", 4),
prepareIndex("test").setId("2").setSource("id", 2, "y", 2)
);
assertNoFailuresAndResponse(buildRequest("doc['x'] + 1"), rsp -> {
SearchHits hits = rsp.getHits();
@ -349,7 +350,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
public void testMissingField() throws Exception {
createIndex("test");
ensureGreen("test");
client().prepareIndex("test").setId("1").setSource("x", 4).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("x", 4).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("doc['bogus']").get();
fail("Expected missing field to cause failure");
@ -368,9 +369,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "x", 10),
client().prepareIndex("test").setId("2").setSource("id", 2, "x", 3),
client().prepareIndex("test").setId("3").setSource("id", 3, "x", 5)
prepareIndex("test").setId("1").setSource("id", 1, "x", 10),
prepareIndex("test").setId("2").setSource("id", 2, "x", 3),
prepareIndex("test").setId("3").setSource("id", 3, "x", 5)
);
// a = int, b = double, c = long
String script = "doc['x'] * a + b + ((c + doc['x']) > 5000000009 ? 1 : 0)";
@ -384,7 +385,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testCompileFailure() {
client().prepareIndex("test").setId("1").setSource("x", 1).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("x", 1).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("garbage%@#%@").get();
fail("Expected expression compilation failure");
@ -395,7 +396,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testNonNumericParam() {
client().prepareIndex("test").setId("1").setSource("x", 1).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("x", 1).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("a", "a", "astring").get();
fail("Expected string parameter to cause failure");
@ -410,7 +411,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testNonNumericField() {
client().prepareIndex("test").setId("1").setSource("text", "this is not a number").setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("text", "this is not a number").setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("doc['text.keyword']").get();
fail("Expected text field to cause execution failure");
@ -425,7 +426,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testInvalidGlobalVariable() {
client().prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("bogus").get();
fail("Expected bogus variable to cause execution failure");
@ -440,7 +441,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testDocWithoutField() {
client().prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("doc").get();
fail("Expected doc variable without field to cause execution failure");
@ -455,7 +456,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
}
public void testInvalidFieldMember() {
client().prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
prepareIndex("test").setId("1").setSource("foo", 5).setRefreshPolicy(IMMEDIATE).get();
try {
buildRequest("doc['foo'].bogus").get();
fail("Expected bogus field member to cause execution failure");
@ -475,9 +476,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("x", 5, "y", 1.2),
client().prepareIndex("test").setId("2").setSource("x", 10, "y", 1.4),
client().prepareIndex("test").setId("3").setSource("x", 13, "y", 1.8)
prepareIndex("test").setId("1").setSource("x", 5, "y", 1.2),
prepareIndex("test").setId("2").setSource("x", 10, "y", 1.4),
prepareIndex("test").setId("3").setSource("x", 13, "y", 1.8)
);
SearchRequestBuilder req = prepareSearch().setIndices("test");
@ -522,9 +523,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("text", "hello"),
client().prepareIndex("test").setId("2").setSource("text", "goodbye"),
client().prepareIndex("test").setId("3").setSource("text", "hello")
prepareIndex("test").setId("1").setSource("text", "hello"),
prepareIndex("test").setId("2").setSource("text", "goodbye"),
prepareIndex("test").setId("3").setSource("text", "hello")
);
SearchRequestBuilder req = prepareSearch().setIndices("test");
@ -555,7 +556,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
try {
createIndex("test_index");
ensureGreen("test_index");
indexRandom(true, client().prepareIndex("test_index").setId("1").setSource("text_field", "text"));
indexRandom(true, prepareIndex("test_index").setId("1").setSource("text_field", "text"));
UpdateRequestBuilder urb = client().prepareUpdate().setIndex("test_index");
urb.setId("1");
urb.setScript(new Script(ScriptType.INLINE, ExpressionScriptEngine.NAME, "0", Collections.emptyMap()));
@ -575,11 +576,11 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("agg_index");
indexRandom(
true,
client().prepareIndex("agg_index").setId("1").setSource("one", 1.0, "two", 2.0, "three", 3.0, "four", 4.0),
client().prepareIndex("agg_index").setId("2").setSource("one", 2.0, "two", 2.0, "three", 3.0, "four", 4.0),
client().prepareIndex("agg_index").setId("3").setSource("one", 3.0, "two", 2.0, "three", 3.0, "four", 4.0),
client().prepareIndex("agg_index").setId("4").setSource("one", 4.0, "two", 2.0, "three", 3.0, "four", 4.0),
client().prepareIndex("agg_index").setId("5").setSource("one", 5.0, "two", 2.0, "three", 3.0, "four", 4.0)
prepareIndex("agg_index").setId("1").setSource("one", 1.0, "two", 2.0, "three", 3.0, "four", 4.0),
prepareIndex("agg_index").setId("2").setSource("one", 2.0, "two", 2.0, "three", 3.0, "four", 4.0),
prepareIndex("agg_index").setId("3").setSource("one", 3.0, "two", 2.0, "three", 3.0, "four", 4.0),
prepareIndex("agg_index").setId("4").setSource("one", 4.0, "two", 2.0, "three", 3.0, "four", 4.0),
prepareIndex("agg_index").setId("5").setSource("one", 5.0, "two", 2.0, "three", 3.0, "four", 4.0)
);
assertResponse(
prepareSearch("agg_index").addAggregation(
@ -639,8 +640,7 @@ public class MoreExpressionIT extends ESIntegTestCase {
xContentBuilder.endObject().endObject().endObject().endObject();
assertAcked(prepareCreate("test").setMapping(xContentBuilder));
ensureGreen();
client().prepareIndex("test")
.setId("1")
prepareIndex("test").setId("1")
.setSource(
jsonBuilder().startObject()
.field("name", "test")
@ -686,9 +686,9 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen();
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "price", 1.0, "vip", true),
client().prepareIndex("test").setId("2").setSource("id", 2, "price", 2.0, "vip", false),
client().prepareIndex("test").setId("3").setSource("id", 3, "price", 2.0, "vip", false)
prepareIndex("test").setId("1").setSource("id", 1, "price", 1.0, "vip", true),
prepareIndex("test").setId("2").setSource("id", 2, "price", 2.0, "vip", false),
prepareIndex("test").setId("3").setSource("id", 3, "price", 2.0, "vip", false)
);
// access .value
assertNoFailuresAndResponse(buildRequest("doc['vip'].value"), rsp -> {
@ -719,8 +719,8 @@ public class MoreExpressionIT extends ESIntegTestCase {
ensureGreen("test");
indexRandom(
true,
client().prepareIndex("test").setId("1").setSource("id", 1, "foo", 1.0),
client().prepareIndex("test").setId("2").setSource("id", 2, "foo", 0.0)
prepareIndex("test").setId("1").setSource("id", 1, "foo", 1.0),
prepareIndex("test").setId("2").setSource("id", 2, "foo", 0.0)
);
SearchRequestBuilder builder = buildRequest("doc['foo'].value");
Script script = new Script(ScriptType.INLINE, "expression", "doc['foo'].value", Collections.emptyMap());

View file

@ -41,7 +41,7 @@ public class StoredExpressionIT extends ESIntegTestCase {
public void testAllOpsDisabledIndexedScripts() throws IOException {
clusterAdmin().preparePutStoredScript().setId("script1").setContent(new BytesArray("""
{"script": {"lang": "expression", "source": "2"} }"""), XContentType.JSON).get();
client().prepareIndex("test").setId("1").setSource("{\"theField\":\"foo\"}", XContentType.JSON).get();
prepareIndex("test").setId("1").setSource("{\"theField\":\"foo\"}", XContentType.JSON).get();
try {
client().prepareUpdate("test", "1").setScript(new Script(ScriptType.STORED, null, "script1", Collections.emptyMap())).get();
fail("update script should have been rejected");