Skip to content

Commit ca34bd9

Browse files
committed
test POST /_admin/execute (#353)
1 parent 7a4cd73 commit ca34bd9

File tree

3 files changed

+18
-4
lines changed

3 files changed

+18
-4
lines changed

docker/start_db.sh

+2-1
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,8 @@ docker run -d \
7070
--auth.jwt-secret=/jwtSecret \
7171
--starter.address="${GW}" \
7272
--docker.image="${DOCKER_IMAGE}" \
73-
--starter.local --starter.mode=${STARTER_MODE} --all.log.level=debug --all.log.output=+ --log.verbose --all.server.descriptors-minimum=1024
73+
--starter.local --starter.mode=${STARTER_MODE} --all.log.level=debug --all.log.output=+ --log.verbose \
74+
--all.server.descriptors-minimum=1024 --all.javascript.allow-admin-execute=true
7475

7576

7677
wait_server() {

driver/src/test/java/com/arangodb/ArangoDBTest.java

+15-2
Original file line numberDiff line numberDiff line change
@@ -27,13 +27,12 @@
2727
import com.arangodb.model.*;
2828
import com.arangodb.model.LogOptions.SortOrder;
2929
import com.arangodb.util.RawJson;
30-
import com.arangodb.util.TestUtils;
3130
import com.arangodb.util.UnicodeUtils;
3231
import com.fasterxml.jackson.databind.JsonNode;
32+
import com.fasterxml.jackson.databind.node.JsonNodeFactory;
3333
import org.junit.jupiter.api.AfterAll;
3434
import org.junit.jupiter.api.BeforeAll;
3535
import org.junit.jupiter.api.Disabled;
36-
import org.junit.jupiter.api.Test;
3736
import org.junit.jupiter.params.ParameterizedTest;
3837
import org.junit.jupiter.params.provider.EnumSource;
3938
import org.junit.jupiter.params.provider.MethodSource;
@@ -399,6 +398,20 @@ void executeGetVersion(ArangoDB arangoDB) {
399398
}
400399
}
401400

401+
@ParameterizedTest(name = "{index}")
402+
@MethodSource("arangos")
403+
void executeJS(ArangoDB arangoDB) {
404+
assumeTrue(isAtLeastVersion(3, 11));
405+
Request<?> request = Request.builder()
406+
.db(ArangoRequestParam.SYSTEM)
407+
.method(Request.Method.POST)
408+
.path("/_admin/execute")
409+
.body(JsonNodeFactory.instance.textNode("return 11;"))
410+
.build();
411+
final Response<Integer> response = arangoDB.execute(request, Integer.class);
412+
assertThat(response.getBody()).isEqualTo(11);
413+
}
414+
402415
@ParameterizedTest(name = "{index}")
403416
@MethodSource("arangos")
404417
void getLogEntries(ArangoDB arangoDB) {

driver/src/test/resources/simplelogger.properties

+1-1
Original file line numberDiff line numberDiff line change
@@ -7,4 +7,4 @@ org.slf4j.simpleLogger.showShortLogName=false
77

88

99
org.slf4j.simpleLogger.defaultLogLevel=info
10-
#org.slf4j.simpleLogger.log.com.arangodb.http.HttpCommunication=debug
10+
#org.slf4j.simpleLogger.log.com.arangodb.internal.net.Communication=debug

0 commit comments

Comments
 (0)