|
24 | 24 |
|
25 | 25 | import com.evolvedbinary.j8fu.tuple.Tuple2; |
26 | 26 |
|
| 27 | +import static com.evolvedbinary.j8fu.tuple.Tuple.Tuple; |
| 28 | +import static io.restassured.RestAssured.given; |
| 29 | +import static org.apache.http.HttpStatus.SC_OK; |
| 30 | + |
27 | 31 | public class API { |
28 | 32 |
|
29 | 33 | /** |
@@ -220,23 +224,42 @@ static <K, V> Map<K, V>[] arrayOf(final Map<K, V>... entries) { |
220 | 224 | return arrayOfMaps; |
221 | 225 | } |
222 | 226 |
|
223 | | - static boolean testServerHasBadJsonSerialization() { |
224 | | - final String dockerTestImage = sysPropOrEnvVarOrDefault(SYS_PROP_NAME_DOCKER_DB_IMAGE, ENV_VAR_DOCKER_DB_IMAGE, null, envVarValue -> envVarValue); |
225 | | - if (dockerTestImage == null || dockerTestImage.isEmpty()) { |
226 | | - return false; |
227 | | - } |
| 227 | + static Tuple2<String, String> getServerVersion() { |
| 228 | + final String productName = |
| 229 | + given(). |
| 230 | + accept("text/text"). |
| 231 | + when(). |
| 232 | + get(getRestApiBaseUri() + "/db?_query=system:get-product-name()&_wrap=no"). |
| 233 | + then(). |
| 234 | + statusCode(SC_OK). |
| 235 | + extract().body().asString(); |
228 | 236 |
|
229 | | - return dockerTestImage.endsWith("fusiondb-server:1.0.0-ALPHA2") |
230 | | - || dockerTestImage.endsWith("existdb:5.0.0") |
231 | | - || dockerTestImage.endsWith("existdb:5.2.0"); |
| 237 | + final String version = |
| 238 | + given(). |
| 239 | + accept("text/text"). |
| 240 | + when(). |
| 241 | + get(getRestApiBaseUri() + "/db?_query=system:get-version()&_wrap=no"). |
| 242 | + then(). |
| 243 | + statusCode(SC_OK). |
| 244 | + extract().body().asString(); |
| 245 | + |
| 246 | + return Tuple(productName, version); |
| 247 | + } |
| 248 | + |
| 249 | + static boolean testServerHasBadJsonSerialization() { |
| 250 | + final Tuple2<String, String> serverVersion = getServerVersion(); |
| 251 | + return serverVersion.equals(Tuple("FusionDB", "1.0.0-ALPHA2")) |
| 252 | + || serverVersion.equals(Tuple("eXist-db", "5.0.0")) |
| 253 | + || serverVersion.equals(Tuple("eXist-db", "5.2.0")); |
232 | 254 | } |
233 | 255 |
|
234 | 256 | static boolean testServerHasBadXmldbSetMimeType() { |
235 | | - final String dockerTestImage = sysPropOrEnvVarOrDefault(SYS_PROP_NAME_DOCKER_DB_IMAGE, ENV_VAR_DOCKER_DB_IMAGE, null, envVarValue -> envVarValue); |
236 | | - if (dockerTestImage == null || dockerTestImage.isEmpty()) { |
237 | | - return false; |
238 | | - } |
| 257 | + final Tuple2<String, String> serverVersion = getServerVersion(); |
| 258 | + return serverVersion.equals(Tuple("FusionDB", "1.0.0-ALPHA2")); |
| 259 | + } |
239 | 260 |
|
240 | | - return dockerTestImage.endsWith("fusiondb-server:1.0.0-ALPHA2"); |
| 261 | + static boolean testServerHasBadCopyMoveCollectionOperations() { |
| 262 | + final Tuple2<String, String> serverVersion = getServerVersion(); |
| 263 | + return serverVersion.equals(Tuple("FusionDB", "1.0.0-ALPHA3")); |
241 | 264 | } |
242 | 265 | } |
0 commit comments