diff --git a/.github/workflows/test.yaml b/.github/workflows/test.yaml index 296f54a0b..eafb7e87a 100644 --- a/.github/workflows/test.yaml +++ b/.github/workflows/test.yaml @@ -1,4 +1,4 @@ -name: test-workflow +name: Run Naksha tests on: pull_request: @@ -7,9 +7,6 @@ on: - synchronize # run whenever PR is updated - reopened # run whenever PR is reopoened workflow_dispatch: # manual run - push: - branches: - - test-unit permissions: @@ -44,7 +41,6 @@ jobs: with: distribution: 'temurin' java-version: '17' - cache: 'gradle' - name: Setup Gradle uses: gradle/gradle-build-action@v2 with: diff --git a/.gitignore b/.gitignore index f91922d1e..6ee9c729c 100644 --- a/.gitignore +++ b/.gitignore @@ -1,7 +1,7 @@ -#gradlew +gradlew gradlew.bat -#gradle -#gradle/ +gradle +gradle/ .gradle *.iml *.iws diff --git a/build.gradle.kts b/build.gradle.kts index 123cd7c32..24890e3f6 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -85,7 +85,7 @@ val slf4j_console = "org.slf4j:slf4j-simple:2.0.6"; val log4j_core = "org.apache.logging.log4j:log4j-core:2.20.0" val log4j_api = "org.apache.logging.log4j:log4j-api:2.20.0" val log4j_jcl = "org.apache.logging.log4j:log4j-jcl:2.20.0" -val log4j_slf4j = "org.apache.logging.log4j:log4j-slf4j2-impl:2.20.0" +val log4j_slf4j = "org.apache.logging.log4j:log4j-slf4j-impl:2.20.0" val postgres = "org.postgresql:postgresql:42.5.4" val zaxxer_hikari = "com.zaxxer:HikariCP:5.1.0" @@ -238,11 +238,11 @@ subprojects { targetCompatibility = JavaVersion.VERSION_17 } - /*testing { + testing { dependencies { - //implementation(slf4j_console) + implementation(slf4j_console) } - }*/ + } // Fix transitive dependencies. @@ -412,10 +412,6 @@ project(":here-naksha-handler-psql") { } } -configurations.implementation { - exclude(module = "commons-logging") -} - project(":here-naksha-lib-handlers") { description = "Naksha Handlers library" dependencies { @@ -455,12 +451,9 @@ project(":here-naksha-lib-handlers") { implementation(project(":here-naksha-lib-core")) implementation(project(":here-naksha-lib-psql")) //implementation(project(":here-naksha-lib-extension")) - //implementation(project(":here-naksha-handler-psql")) + implementation(project(":here-naksha-handler-psql")) implementation(project(":here-naksha-lib-hub")) - implementation(log4j_slf4j) - implementation(log4j_api) - implementation(log4j_core) implementation(commons_lang3) implementation(vividsolutions_jts_core) implementation(postgres) diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar deleted file mode 100644 index 7f93135c4..000000000 Binary files a/gradle/wrapper/gradle-wrapper.jar and /dev/null differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties deleted file mode 100644 index 3fa8f862f..000000000 --- a/gradle/wrapper/gradle-wrapper.properties +++ /dev/null @@ -1,7 +0,0 @@ -distributionBase=GRADLE_USER_HOME -distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip -networkTimeout=10000 -validateDistributionUrl=true -zipStoreBase=GRADLE_USER_HOME -zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew deleted file mode 100755 index 1aa94a426..000000000 --- a/gradlew +++ /dev/null @@ -1,249 +0,0 @@ -#!/bin/sh - -# -# Copyright © 2015-2021 the original authors. -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. -# - -############################################################################## -# -# Gradle start up script for POSIX generated by Gradle. -# -# Important for running: -# -# (1) You need a POSIX-compliant shell to run this script. If your /bin/sh is -# noncompliant, but you have some other compliant shell such as ksh or -# bash, then to run this script, type that shell name before the whole -# command line, like: -# -# ksh Gradle -# -# Busybox and similar reduced shells will NOT work, because this script -# requires all of these POSIX shell features: -# * functions; -# * expansions «$var», «${var}», «${var:-default}», «${var+SET}», -# «${var#prefix}», «${var%suffix}», and «$( cmd )»; -# * compound commands having a testable exit status, especially «case»; -# * various built-in commands including «command», «set», and «ulimit». -# -# Important for patching: -# -# (2) This script targets any POSIX shell, so it avoids extensions provided -# by Bash, Ksh, etc; in particular arrays are avoided. -# -# The "traditional" practice of packing multiple parameters into a -# space-separated string is a well documented source of bugs and security -# problems, so this is (mostly) avoided, by progressively accumulating -# options in "$@", and eventually passing that to Java. -# -# Where the inherited environment variables (DEFAULT_JVM_OPTS, JAVA_OPTS, -# and GRADLE_OPTS) rely on word-splitting, this is performed explicitly; -# see the in-line comments for details. -# -# There are tweaks for specific operating systems such as AIX, CygWin, -# Darwin, MinGW, and NonStop. -# -# (3) This script is generated from the Groovy template -# https://github.com/gradle/gradle/blob/HEAD/subprojects/plugins/src/main/resources/org/gradle/api/internal/plugins/unixStartScript.txt -# within the Gradle project. -# -# You can find Gradle at https://github.com/gradle/gradle/. -# -############################################################################## - -# Attempt to set APP_HOME - -# Resolve links: $0 may be a link -app_path=$0 - -# Need this for daisy-chained symlinks. -while - APP_HOME=${app_path%"${app_path##*/}"} # leaves a trailing /; empty if no leading path - [ -h "$app_path" ] -do - ls=$( ls -ld "$app_path" ) - link=${ls#*' -> '} - case $link in #( - /*) app_path=$link ;; #( - *) app_path=$APP_HOME$link ;; - esac -done - -# This is normally unused -# shellcheck disable=SC2034 -APP_BASE_NAME=${0##*/} -# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036) -APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit - -# Use the maximum available, or set MAX_FD != -1 to use that value. -MAX_FD=maximum - -warn () { - echo "$*" -} >&2 - -die () { - echo - echo "$*" - echo - exit 1 -} >&2 - -# OS specific support (must be 'true' or 'false'). -cygwin=false -msys=false -darwin=false -nonstop=false -case "$( uname )" in #( - CYGWIN* ) cygwin=true ;; #( - Darwin* ) darwin=true ;; #( - MSYS* | MINGW* ) msys=true ;; #( - NONSTOP* ) nonstop=true ;; -esac - -CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar - - -# Determine the Java command to use to start the JVM. -if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD=$JAVA_HOME/jre/sh/java - else - JAVACMD=$JAVA_HOME/bin/java - fi - if [ ! -x "$JAVACMD" ] ; then - die "ERROR: JAVA_HOME is set to an invalid directory: $JAVA_HOME - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -else - JAVACMD=java - if ! command -v java >/dev/null 2>&1 - then - die "ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. - -Please set the JAVA_HOME variable in your environment to match the -location of your Java installation." - fi -fi - -# Increase the maximum file descriptors if we can. -if ! "$cygwin" && ! "$darwin" && ! "$nonstop" ; then - case $MAX_FD in #( - max*) - # In POSIX sh, ulimit -H is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - MAX_FD=$( ulimit -H -n ) || - warn "Could not query maximum file descriptor limit" - esac - case $MAX_FD in #( - '' | soft) :;; #( - *) - # In POSIX sh, ulimit -n is undefined. That's why the result is checked to see if it worked. - # shellcheck disable=SC2039,SC3045 - ulimit -n "$MAX_FD" || - warn "Could not set maximum file descriptor limit to $MAX_FD" - esac -fi - -# Collect all arguments for the java command, stacking in reverse order: -# * args from the command line -# * the main class name -# * -classpath -# * -D...appname settings -# * --module-path (only if needed) -# * DEFAULT_JVM_OPTS, JAVA_OPTS, and GRADLE_OPTS environment variables. - -# For Cygwin or MSYS, switch paths to Windows format before running java -if "$cygwin" || "$msys" ; then - APP_HOME=$( cygpath --path --mixed "$APP_HOME" ) - CLASSPATH=$( cygpath --path --mixed "$CLASSPATH" ) - - JAVACMD=$( cygpath --unix "$JAVACMD" ) - - # Now convert the arguments - kludge to limit ourselves to /bin/sh - for arg do - if - case $arg in #( - -*) false ;; # don't mess with options #( - /?*) t=${arg#/} t=/${t%%/*} # looks like a POSIX filepath - [ -e "$t" ] ;; #( - *) false ;; - esac - then - arg=$( cygpath --path --ignore --mixed "$arg" ) - fi - # Roll the args list around exactly as many times as the number of - # args, so each arg winds up back in the position where it started, but - # possibly modified. - # - # NB: a `for` loop captures its iteration list before it begins, so - # changing the positional parameters here affects neither the number of - # iterations, nor the values presented in `arg`. - shift # remove old arg - set -- "$@" "$arg" # push replacement arg - done -fi - - -# Add default JVM options here. You can also use JAVA_OPTS and GRADLE_OPTS to pass JVM options to this script. -DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"' - -# Collect all arguments for the java command: -# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments, -# and any embedded shellness will be escaped. -# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be -# treated as '${Hostname}' itself on the command line. - -set -- \ - "-Dorg.gradle.appname=$APP_BASE_NAME" \ - -classpath "$CLASSPATH" \ - org.gradle.wrapper.GradleWrapperMain \ - "$@" - -# Stop when "xargs" is not available. -if ! command -v xargs >/dev/null 2>&1 -then - die "xargs is not available" -fi - -# Use "xargs" to parse quoted args. -# -# With -n1 it outputs one arg per line, with the quotes and backslashes removed. -# -# In Bash we could simply go: -# -# readarray ARGS < <( xargs -n1 <<<"$var" ) && -# set -- "${ARGS[@]}" "$@" -# -# but POSIX shell has neither arrays nor command substitution, so instead we -# post-process each arg (as a line of input to sed) to backslash-escape any -# character that might be a shell metacharacter, then use eval to reverse -# that process (while maintaining the separation between arguments), and wrap -# the whole thing up as a single "set" statement. -# -# This will of course break if any of these variables contains a newline or -# an unmatched quote. -# - -eval "set -- $( - printf '%s\n' "$DEFAULT_JVM_OPTS $JAVA_OPTS $GRADLE_OPTS" | - xargs -n1 | - sed ' s~[^-[:alnum:]+,./:=@_]~\\&~g; ' | - tr '\n' ' ' - )" '"$@"' - -exec "$JAVACMD" "$@" diff --git a/here-naksha-app-service/src/main/java/com/here/naksha/app/service/http/NakshaHttpVerticle.java b/here-naksha-app-service/src/main/java/com/here/naksha/app/service/http/NakshaHttpVerticle.java index 2514f7613..83fc29980 100644 --- a/here-naksha-app-service/src/main/java/com/here/naksha/app/service/http/NakshaHttpVerticle.java +++ b/here-naksha-app-service/src/main/java/com/here/naksha/app/service/http/NakshaHttpVerticle.java @@ -609,7 +609,6 @@ public XyzResponse sendXyzResponse( @NotNull RoutingContext routingContext, @Nullable HttpResponseType responseType, @NotNull XyzResponse response) { - log.info("SendXyzResponse start on path {}", routingContext.request().path()); // TODO(Kuba): remove this line try { final String etag = response.getEtag(); if (etag != null) { @@ -702,11 +701,7 @@ public void sendRawResponse( final HttpServerResponse httpResponse = routingContext.response(); httpResponse.setStatusCode(status.code()).setStatusMessage(status.reasonPhrase()); httpResponse.putHeader(STREAM_ID, streamId(routingContext)); - log.info("Sending raw response on path {}", routingContext.request().path()); // TODO(Kuba): remove this line if (content == null || content.length() == 0) { - log.info( - "Empty content served from path {}", - routingContext.request().path()); // TODO(Kuba): remove this line httpResponse.end(); } else { if (contentType != null) { @@ -726,16 +721,4 @@ public void sendRawResponse( // ctx.setAuthor(); return ctx; } - - @Override - public void stop() throws Exception { - log.info("Stop (no params) called on {}", this.getClass().getSimpleName()); // TODO(Kuba): remove this line - super.stop(); - } - - @Override - public void stop(Promise stopPromise) throws Exception { - log.info("Stop (with promise) called on {}", this.getClass().getSimpleName()); // TODO(Kuba): remove this line - super.stop(stopPromise); - } } diff --git a/here-naksha-app-service/src/main/resources/unused_backup/log4j2-console-plain.json b/here-naksha-app-service/src/main/resources/log4j2-console-plain.json similarity index 100% rename from here-naksha-app-service/src/main/resources/unused_backup/log4j2-console-plain.json rename to here-naksha-app-service/src/main/resources/log4j2-console-plain.json diff --git a/here-naksha-app-service/src/main/resources/unused_backup/log4j2.component.properties b/here-naksha-app-service/src/main/resources/log4j2.component.properties similarity index 100% rename from here-naksha-app-service/src/main/resources/unused_backup/log4j2.component.properties rename to here-naksha-app-service/src/main/resources/log4j2.component.properties diff --git a/here-naksha-app-service/src/main/resources/log4j2.xml b/here-naksha-app-service/src/main/resources/log4j2.xml deleted file mode 100644 index f40b0408f..000000000 --- a/here-naksha-app-service/src/main/resources/log4j2.xml +++ /dev/null @@ -1,29 +0,0 @@ - - - - - %d{yyyy-MM-dd HH:mm:ss.SSS XX} [%-5p] %marker [%t] - %c{-3} (%M:%L) %X - %.-4096msg %enc{%ex}{JSON}%n - - - - - - - - - - - - - - - - - - - - - - - - \ No newline at end of file diff --git a/here-naksha-app-service/src/test/java/com/here/naksha/app/common/NakshaTestWebClient.java b/here-naksha-app-service/src/test/java/com/here/naksha/app/common/NakshaTestWebClient.java index c40a8568d..40cda2743 100644 --- a/here-naksha-app-service/src/test/java/com/here/naksha/app/common/NakshaTestWebClient.java +++ b/here-naksha-app-service/src/test/java/com/here/naksha/app/common/NakshaTestWebClient.java @@ -43,7 +43,7 @@ public class NakshaTestWebClient { private static final Logger logger = LoggerFactory.getLogger(NakshaTestWebClient.class); private static final String NAKSHA_HTTP_URI = "http://localhost:8080/"; private static final Duration CONNECT_TIMEOUT = Duration.ofSeconds(10); - private static final Duration SOCKET_TIMEOUT = Duration.ofSeconds(10); + private static final Duration SOCKET_TIMEOUT = Duration.ofSeconds(2); private final HttpClient httpClient; diff --git a/here-naksha-app-service/src/test/java/com/here/naksha/app/service/NakshaAppTest.java b/here-naksha-app-service/src/test/java/com/here/naksha/app/service/NakshaAppTest.java index 332d9c96f..f08d5db87 100644 --- a/here-naksha-app-service/src/test/java/com/here/naksha/app/service/NakshaAppTest.java +++ b/here-naksha-app-service/src/test/java/com/here/naksha/app/service/NakshaAppTest.java @@ -122,7 +122,7 @@ void tc0003_testCreateStorageMissingClassName() throws Exception { } @Test - @Order(4) + @Order(2) void tc0004_testInvalidUrlPath() throws Exception { // Test API : GET /hub/invalid_storages final HttpResponse response = @@ -133,7 +133,7 @@ void tc0004_testInvalidUrlPath() throws Exception { } @Test - @Order(5) + @Order(2) void tc0020_testGetStorageById() throws Exception { // Test API : GET /hub/storages/{storageId} // 1. Load test data @@ -151,7 +151,7 @@ void tc0020_testGetStorageById() throws Exception { } @Test - @Order(6) + @Order(2) void tc0021_testGetStorageByWrongId() throws Exception { // Test API : GET /hub/storages/{storageId} // 1. Load test data @@ -166,7 +166,7 @@ void tc0021_testGetStorageByWrongId() throws Exception { } @Test - @Order(7) + @Order(2) void tc0040_testGetStorages() throws Exception { // Test API : GET /hub/storages // 1. Load test data @@ -184,7 +184,7 @@ void tc0040_testGetStorages() throws Exception { } @Test - @Order(8) + @Order(2) void tc0060_testUpdateStorage() throws Exception { // Test API : PUT /hub/storages/{storageId} // Given: @@ -202,7 +202,7 @@ void tc0060_testUpdateStorage() throws Exception { } @Test - @Order(9) + @Order(2) void tc0061_testUpdateNonexistentStorage() throws Exception { // Test API : PUT /hub/storages/{storageId} // Given: @@ -221,7 +221,7 @@ void tc0061_testUpdateNonexistentStorage() throws Exception { } @Test - @Order(10) + @Order(3) void tc0062_testUpdateStorageWithoutClassName() throws Exception { // Test API : PUT /hub/storages/{storageId} // Given: @@ -239,7 +239,7 @@ void tc0062_testUpdateStorageWithoutClassName() throws Exception { } @Test - @Order(11) + @Order(3) void tc0063_testUpdateStorageWithWithMismatchingId() throws Exception { // Test API : PUT /hub/storages/{storageId} // Given: @@ -259,7 +259,7 @@ void tc0063_testUpdateStorageWithWithMismatchingId() throws Exception { } @Test - @Order(12) + @Order(2) void tc0100_testCreateEventHandler() throws Exception { // Test API : POST /hub/handlers // 1. Load test data @@ -281,7 +281,7 @@ void tc0100_testCreateEventHandler() throws Exception { } @Test - @Order(13) + @Order(3) void tc0101_testDuplicateEventHandler() throws Exception { // Test API : POST /hub/handlers // 1. Load test data @@ -302,7 +302,7 @@ void tc0101_testDuplicateEventHandler() throws Exception { } @Test - @Order(14) + @Order(3) void tc0102_testCreateHandlerMissingClassName() throws Exception { // Test API : POST /hub/handlers // 1. Load test data @@ -321,7 +321,7 @@ void tc0102_testCreateHandlerMissingClassName() throws Exception { } @Test - @Order(15) + @Order(3) void tc0120_testGetHandlerById() throws Exception { // Test API : GET /hub/handlers/{handlerId} // 1. Load test data @@ -339,7 +339,7 @@ void tc0120_testGetHandlerById() throws Exception { } @Test - @Order(16) + @Order(3) void tc0121_testGetHandlerByWrongId() throws Exception { // Test API : GET /hub/handlers/{handlerId} // 1. Load test data @@ -354,7 +354,7 @@ void tc0121_testGetHandlerByWrongId() throws Exception { } @Test - @Order(17) + @Order(3) void tc0140_testGetHandlers() throws Exception { // Test API : GET /hub/handlers // 1. Load test data @@ -372,7 +372,7 @@ void tc0140_testGetHandlers() throws Exception { } @Test - @Order(18) + @Order(3) void tc0160_testUpdateEventHandler() throws Exception { // Test API : PUT /hub/handlers/{handlerId} // Given: @@ -391,7 +391,7 @@ void tc0160_testUpdateEventHandler() throws Exception { } @Test - @Order(19) + @Order(3) void tc0161_testUpdateNonexistentEventHandler() throws Exception { // Test API : PUT /hub/handlers/{handlerId} // Given: @@ -411,7 +411,7 @@ void tc0161_testUpdateNonexistentEventHandler() throws Exception { } @Test - @Order(20) + @Order(3) void tc0162_testUpdateEventHandlerWithMismatchingId() throws Exception { // Test API : PUT /hub/handlers/{handlerId} // Given: @@ -431,7 +431,7 @@ void tc0162_testUpdateEventHandlerWithMismatchingId() throws Exception { } @Test - @Order(21) + @Order(3) void tc0200_testCreateSpace() throws Exception { // Test API : POST /hub/spaces // 1. Load test data @@ -450,7 +450,7 @@ void tc0200_testCreateSpace() throws Exception { } @Test - @Order(22) + @Order(4) void tc0201_testCreateDuplicateSpace() throws Exception { // Test API : POST /hub/spaces // 1. Load test data @@ -469,7 +469,7 @@ void tc0201_testCreateDuplicateSpace() throws Exception { } @Test - @Order(23) + @Order(4) void tc0220_testGetSpaceById() throws Exception { // Test API : GET /hub/spaces/{spaceId} // 1. Load test data @@ -486,7 +486,7 @@ void tc0220_testGetSpaceById() throws Exception { } @Test - @Order(24) + @Order(4) void tc0221_testGetSpaceByWrongId() throws Exception { // Test API : GET /hub/spaces/{spaceId} // 1. Load test data @@ -501,7 +501,7 @@ void tc0221_testGetSpaceByWrongId() throws Exception { } @Test - @Order(25) + @Order(4) void tc0240_testGetSpaces() throws Exception { // Test API : GET /hub/spaces // 1. Load test data @@ -519,7 +519,7 @@ void tc0240_testGetSpaces() throws Exception { } @Test - @Order(26) + @Order(5) void tc0260_testUpdateSpace() throws Exception { // Test API : PUT /hub/spaces/{spaceId} // Given: @@ -537,7 +537,7 @@ void tc0260_testUpdateSpace() throws Exception { } @Test - @Order(27) + @Order(5) void tc0261_testUpdateNonexistentSpace() throws Exception { // Test API : PUT /hub/spaces/{spaceId} // Given: @@ -556,7 +556,7 @@ void tc0261_testUpdateNonexistentSpace() throws Exception { } @Test - @Order(28) + @Order(5) void tc0263_testUpdateSpaceWithWithMismatchingId() throws Exception { // Test API : PUT /hub/spaces/{spaceId} // Given: @@ -575,43 +575,43 @@ void tc0263_testUpdateSpaceWithWithMismatchingId() throws Exception { } @Test - @Order(29) + @Order(6) void tc0300_testCreateFeaturesWithNewIds() throws Exception { createFeatureTests.tc0300_testCreateFeaturesWithNewIds(); } @Test - @Order(43) + @Order(7) void tc0301_testCreateFeaturesWithGivenIds() throws Exception { createFeatureTests.tc0301_testCreateFeaturesWithGivenIds(); } @Test - @Order(30) + @Order(7) void tc0302_testCreateFeaturesWithPrefixId() throws Exception { createFeatureTests.tc0302_testCreateFeaturesWithPrefixId(); } @Test - @Order(31) + @Order(7) void tc0303_testCreateFeaturesWithAddTags() throws Exception { createFeatureTests.tc0303_testCreateFeaturesWithAddTags(); } @Test - @Order(32) + @Order(7) void tc0304_testCreateFeaturesWithRemoveTags() throws Exception { createFeatureTests.tc0304_testCreateFeaturesWithRemoveTags(); } @Test - @Order(33) + @Order(7) void tc0305_testCreateFeaturesWithDupIds() throws Exception { createFeatureTests.tc0305_testCreateFeaturesWithDupIds(); } @Test - @Order(34) + @Order(7) void tc0307_testCreateFeaturesWithNoHandler() throws Exception { createFeatureTests.tc0307_testCreateFeaturesWithNoHandler(); } @@ -623,49 +623,49 @@ void tc0308_testCreateFeaturesWithNoSpace() throws Exception { } @Test - @Order(35) + @Order(8) void tc0400_testReadFeaturesWithIds() throws Exception { readFeaturesByIdsTests.tc0400_testReadFeaturesByIds(); } @Test - @Order(36) + @Order(9) void tc0401_testReadFeaturesForMissingIds() throws Exception { readFeaturesByIdsTests.tc0401_testReadFeaturesForMissingIds(); } @Test - @Order(37) + @Order(9) void tc0402_testReadFeaturesWithoutIds() throws Exception { readFeaturesByIdsTests.tc0402_testReadFeaturesWithoutIds(); } @Test - @Order(38) + @Order(9) void tc0403_testReadFeaturesByIdsFromMissingSpace() throws Exception { readFeaturesByIdsTests.tc0403_testReadFeaturesByIdsFromMissingSpace(); } @Test - @Order(39) + @Order(9) void tc0404_testReadFeatureById() throws Exception { readFeaturesByIdsTests.tc0404_testReadFeatureById(); } @Test - @Order(40) + @Order(9) void tc0405_testReadFeatureForMissingId() throws Exception { readFeaturesByIdsTests.tc0405_testReadFeatureForMissingId(); } @Test - @Order(41) + @Order(9) void tc0406_testReadFeatureByIdFromMissingSpace() throws Exception { readFeaturesByIdsTests.tc0406_testReadFeatureByIdFromMissingSpace(); } @Test - @Order(42) + @Order(9) void tc0407_testReadFeaturesWithCommaSeparatedIds() throws Exception { readFeaturesByIdsTests.tc0407_testReadFeaturesWithCommaSeparatedIds(); }