|
@@ -22,6 +22,7 @@ import org.elasticsearch.common.xcontent.XContentHelper;
|
|
|
import org.elasticsearch.env.Environment;
|
|
|
import org.elasticsearch.index.get.GetResult;
|
|
|
import org.elasticsearch.index.shard.ShardId;
|
|
|
+import org.elasticsearch.plugins.internal.DocumentParsingProvider;
|
|
|
import org.elasticsearch.script.MockScriptEngine;
|
|
|
import org.elasticsearch.script.Script;
|
|
|
import org.elasticsearch.script.ScriptEngine;
|
|
@@ -59,6 +60,7 @@ import static org.hamcrest.Matchers.containsString;
|
|
|
import static org.hamcrest.Matchers.equalTo;
|
|
|
import static org.hamcrest.Matchers.instanceOf;
|
|
|
import static org.hamcrest.Matchers.notNullValue;
|
|
|
+import static org.mockito.Mockito.mock;
|
|
|
|
|
|
public class UpdateRequestTests extends ESTestCase {
|
|
|
|
|
@@ -114,7 +116,7 @@ public class UpdateRequestTests extends ESTestCase {
|
|
|
final MockScriptEngine engine = new MockScriptEngine("mock", scripts, Collections.emptyMap());
|
|
|
Map<String, ScriptEngine> engines = Collections.singletonMap(engine.getType(), engine);
|
|
|
ScriptService scriptService = new ScriptService(baseSettings, engines, ScriptModule.CORE_CONTEXTS, () -> 1L);
|
|
|
- updateHelper = new UpdateHelper(scriptService);
|
|
|
+ updateHelper = new UpdateHelper(scriptService, DocumentParsingProvider.EMPTY_INSTANCE);
|
|
|
}
|
|
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@@ -590,14 +592,14 @@ public class UpdateRequestTests extends ESTestCase {
|
|
|
try (var parser = createParser(JsonXContent.jsonXContent, new BytesArray("{\"doc\": {\"body\": \"foo\"}}"))) {
|
|
|
request = new UpdateRequest("test", "1").fromXContent(parser);
|
|
|
}
|
|
|
-
|
|
|
- UpdateHelper.Result result = UpdateHelper.prepareUpdateIndexRequest(shardId, request, getResult, true);
|
|
|
+ UpdateHelper updateHelper = new UpdateHelper(mock(ScriptService.class), DocumentParsingProvider.EMPTY_INSTANCE);
|
|
|
+ UpdateHelper.Result result = updateHelper.prepareUpdateIndexRequest(shardId, request, getResult, true);
|
|
|
|
|
|
assertThat(result.action(), instanceOf(UpdateResponse.class));
|
|
|
assertThat(result.getResponseResult(), equalTo(DocWriteResponse.Result.NOOP));
|
|
|
|
|
|
// Try again, with detectNoop turned off
|
|
|
- result = UpdateHelper.prepareUpdateIndexRequest(shardId, request, getResult, false);
|
|
|
+ result = updateHelper.prepareUpdateIndexRequest(shardId, request, getResult, false);
|
|
|
assertThat(result.action(), instanceOf(IndexRequest.class));
|
|
|
assertThat(result.getResponseResult(), equalTo(DocWriteResponse.Result.UPDATED));
|
|
|
assertThat(result.updatedSourceAsMap().get("body").toString(), equalTo("foo"));
|
|
@@ -605,7 +607,7 @@ public class UpdateRequestTests extends ESTestCase {
|
|
|
try (var parser = createParser(JsonXContent.jsonXContent, new BytesArray("{\"doc\": {\"body\": \"bar\"}}"))) {
|
|
|
// Change the request to be a different doc
|
|
|
request = new UpdateRequest("test", "1").fromXContent(parser);
|
|
|
- result = UpdateHelper.prepareUpdateIndexRequest(shardId, request, getResult, true);
|
|
|
+ result = updateHelper.prepareUpdateIndexRequest(shardId, request, getResult, true);
|
|
|
|
|
|
assertThat(result.action(), instanceOf(IndexRequest.class));
|
|
|
assertThat(result.getResponseResult(), equalTo(DocWriteResponse.Result.UPDATED));
|