This is an automated email from the ASF dual-hosted git repository.
jamesnetherton pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/camel-quarkus.git
The following commit(s) were added to refs/heads/main by this push:
new 06025ace9c [fixes #7585] Wiremock Olingo4 test
06025ace9c is described below
commit 06025ace9c472230f970b0abe8296d84f0c041e4
Author: Lukas Lowinger <[email protected]>
AuthorDate: Thu Aug 7 12:14:40 2025 +0200
[fixes #7585] Wiremock Olingo4 test
---
integration-tests/olingo4/pom.xml | 5 ++
.../component/olingo4/it/Olingo4Resource.java | 3 +-
.../component/olingo4/it/OdataTestResource.java | 57 ++++++++++++++++++++++
.../quarkus/component/olingo4/it/Olingo4Test.java | 7 +--
.../get--8ae41609-c49a-4b6d-b335-ee727631a048.json | 22 +++++++++
...adata-2f40bdab-7053-4eb5-83be-f70b43486891.json | 29 +++++++++++
...adata-330a90d0-592f-46c6-80f9-cf15b055f9da.json | 28 +++++++++++
...adata-3e0fad91-a570-4947-9e67-3823c33076ea.json | 29 +++++++++++
...adata-9e008580-1cb1-4fd1-8135-3d64745024a9.json | 29 +++++++++++
...adata-c0873f71-c4e2-4b98-a992-df3accaa15db.json | 29 +++++++++++
...eople-3d065a98-0189-48f5-b34b-069d78fcf30c.json | 32 ++++++++++++
...black-0de8fed9-0206-42ee-8a37-e8e12af29bef.json | 29 +++++++++++
...black-1dc96a47-53cd-4833-ad05-7741d80f786f.json | 29 +++++++++++
...black-304dabfb-7440-413c-8e79-98d8d9a128b8.json | 29 +++++++++++
...black-98c362e6-d716-4c73-be36-9feaaacc4770.json | 29 +++++++++++
...black-d7806e3f-fdc3-40fa-b29d-6dde378ecd26.json | 29 +++++++++++
...black-d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0.json | 23 +++++++++
...black-eddd9fd8-d57a-4b27-abe3-9e7c94efe205.json | 28 +++++++++++
...y1su2-cec4fed0-b2c5-405b-ad73-6ca1206baec9.json | 23 +++++++++
19 files changed, 485 insertions(+), 4 deletions(-)
diff --git a/integration-tests/olingo4/pom.xml
b/integration-tests/olingo4/pom.xml
index 9e791d947a..f680c7f3ff 100644
--- a/integration-tests/olingo4/pom.xml
+++ b/integration-tests/olingo4/pom.xml
@@ -60,6 +60,11 @@
<artifactId>camel-quarkus-integration-test-support</artifactId>
<scope>test</scope>
</dependency>
+ <dependency>
+ <groupId>org.apache.camel.quarkus</groupId>
+ <artifactId>camel-quarkus-integration-wiremock-support</artifactId>
+ <scope>test</scope>
+ </dependency>
</dependencies>
diff --git
a/integration-tests/olingo4/src/main/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Resource.java
b/integration-tests/olingo4/src/main/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Resource.java
index 9b4d423499..8d1b5298ad 100644
---
a/integration-tests/olingo4/src/main/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Resource.java
+++
b/integration-tests/olingo4/src/main/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Resource.java
@@ -38,12 +38,13 @@ import
org.apache.olingo.client.api.communication.ODataClientErrorException;
import org.apache.olingo.client.api.domain.ClientEntity;
import org.apache.olingo.client.api.domain.ClientProperty;
import org.apache.olingo.commons.api.http.HttpStatusCode;
+import org.eclipse.microprofile.config.ConfigProvider;
@Path("/olingo4")
@ApplicationScoped
public class Olingo4Resource {
- public static final String TEST_SERVICE_BASE_URL =
"https://services.odata.org/TripPinRESTierService";
+ public final String TEST_SERVICE_BASE_URL =
ConfigProvider.getConfig().getValue("olingo4.test.url", String.class);
@Inject
ProducerTemplate producerTemplate;
diff --git
a/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/OdataTestResource.java
b/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/OdataTestResource.java
new file mode 100644
index 0000000000..0cc48f0bef
--- /dev/null
+++
b/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/OdataTestResource.java
@@ -0,0 +1,57 @@
+/*
+ * Licensed to the Apache Software Foundation (ASF) under one or more
+ * contributor license agreements. See the NOTICE file distributed with
+ * this work for additional information regarding copyright ownership.
+ * The ASF licenses this file to You 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
+ *
+ * http://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.
+ */
+package org.apache.camel.quarkus.component.olingo4.it;
+
+import java.util.Map;
+
+import
org.apache.camel.quarkus.test.wiremock.WireMockTestResourceLifecycleManager;
+import org.apache.camel.util.ObjectHelper;
+
+public class OdataTestResource extends WireMockTestResourceLifecycleManager {
+ private static final String ODATA_API_BASE_URL =
"https://services.odata.org/TripPinRESTierService";
+ private static final String ENV_ODATA_API_BASE_URL = "ODATA_API_BASE_URL";
+
+ @Override
+ public Map<String, String> start() {
+ Map<String, String> configuration = super.start();
+
+ String wiremockUrl = configuration.get("wiremock.url");
+ if (ObjectHelper.isNotEmpty(wiremockUrl)) {
+ configuration.put("olingo4.test.url", wiremockUrl);
+ } else if (!isMockingEnabled()) {
+ configuration.put("olingo4.test.url",
System.getenv(ENV_ODATA_API_BASE_URL));
+ }
+
+ return configuration;
+ }
+
+ @Override
+ protected String getRecordTargetBaseUrl() {
+ return ODATA_API_BASE_URL;
+ }
+
+ @Override
+ protected boolean isMockingEnabled() {
+ return !envVarsPresent(ENV_ODATA_API_BASE_URL);
+ }
+
+ @Override
+ protected boolean isDeleteRecordedMappingsOnError() {
+ // we are testing scenario where we delete record and then we want to
verify it was deleted (which returns non success code)
+ return false;
+ }
+}
diff --git
a/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Test.java
b/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Test.java
index dcd89b6485..0ed89fc9e8 100644
---
a/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Test.java
+++
b/integration-tests/olingo4/src/test/java/org/apache/camel/quarkus/component/olingo4/it/Olingo4Test.java
@@ -22,7 +22,6 @@ import io.quarkus.test.common.QuarkusTestResource;
import io.quarkus.test.junit.QuarkusTest;
import io.restassured.RestAssured;
import io.restassured.http.ContentType;
-import org.apache.camel.quarkus.test.TrustStoreResource;
import org.apache.http.client.methods.HttpGet;
import org.apache.http.client.methods.HttpUriRequest;
import org.apache.http.impl.client.CloseableHttpClient;
@@ -30,16 +29,18 @@ import org.apache.http.impl.client.HttpClients;
import org.apache.http.protocol.BasicHttpContext;
import org.apache.http.protocol.HttpContext;
import org.apache.http.protocol.HttpCoreContext;
+import org.eclipse.microprofile.config.ConfigProvider;
import org.junit.jupiter.api.BeforeAll;
import org.junit.jupiter.api.Test;
-import static
org.apache.camel.quarkus.component.olingo4.it.Olingo4Resource.TEST_SERVICE_BASE_URL;
import static org.hamcrest.core.Is.is;
@QuarkusTest
-@QuarkusTestResource(TrustStoreResource.class)
+@QuarkusTestResource(OdataTestResource.class)
class Olingo4Test {
+ public static final String TEST_SERVICE_BASE_URL =
ConfigProvider.getConfig().getValue("olingo4.test.url", String.class);
+
private static String sessionId;
@BeforeAll
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/get--8ae41609-c49a-4b6d-b335-ee727631a048.json
b/integration-tests/olingo4/src/test/resources/mappings/get--8ae41609-c49a-4b6d-b335-ee727631a048.json
new file mode 100644
index 0000000000..5cfe1c6d54
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/get--8ae41609-c49a-4b6d-b335-ee727631a048.json
@@ -0,0 +1,22 @@
+{
+ "id" : "8ae41609-c49a-4b6d-b335-ee727631a048",
+ "name" : "",
+ "request" : {
+ "url" : "/",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 302,
+ "body" : "<html><head><title>Object
moved</title></head><body>\r\n<h2>Object moved to <a
href=\"/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/\">here</a>.</h2>\r\n</body></html>\r\n",
+ "headers" : {
+ "Server" : "Microsoft-IIS/10.0",
+ "Date" : "Thu, 07 Aug 2025 08:15:38 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Location" : "/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/",
+ "Content-Type" : "text/html; charset=utf-8"
+ }
+ },
+ "uuid" : "8ae41609-c49a-4b6d-b335-ee727631a048",
+ "persistent" : true,
+ "insertionIndex" : 15
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-2f40bdab-7053-4eb5-83be-f70b43486891.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-2f40bdab-7053-4eb5-83be-f70b43486891.json
new file mode 100644
index 0000000000..68fcfecbaf
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-2f40bdab-7053-4eb5-83be-f70b43486891.json
@@ -0,0 +1,29 @@
+{
+ "id" : "2f40bdab-7053-4eb5-83be-f70b43486891",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_metadata",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/$metadata",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" : "<?xml version=\"1.0\" encoding=\"utf-8\"?><edmx:Edmx
Version=\"4.0\"
xmlns:edmx=\"http://docs.oasis-open.org/odata/ns/edmx\"><edmx:DataServices><Schema
Namespace=\"Trippin\"
xmlns=\"http://docs.oasis-open.org/odata/ns/edm\"><EntityType
Name=\"Person\"><Key><PropertyRef Name=\"UserName\" /></Key><Property
Name=\"UserName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"FirstName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"LastName\" Type=\"Edm.Stri [...]
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:50 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/xml; charset=utf-8"
+ }
+ },
+ "uuid" : "2f40bdab-7053-4eb5-83be-f70b43486891",
+ "persistent" : true,
+ "scenarioName" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata",
+ "requiredScenarioState" :
"scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-3",
+ "newScenarioState" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-4",
+ "insertionIndex" : 9
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-330a90d0-592f-46c6-80f9-cf15b055f9da.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-330a90d0-592f-46c6-80f9-cf15b055f9da.json
new file mode 100644
index 0000000000..9e92e32be0
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-330a90d0-592f-46c6-80f9-cf15b055f9da.json
@@ -0,0 +1,28 @@
+{
+ "id" : "330a90d0-592f-46c6-80f9-cf15b055f9da",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_metadata",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/$metadata",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" : "<?xml version=\"1.0\" encoding=\"utf-8\"?><edmx:Edmx
Version=\"4.0\"
xmlns:edmx=\"http://docs.oasis-open.org/odata/ns/edmx\"><edmx:DataServices><Schema
Namespace=\"Trippin\"
xmlns=\"http://docs.oasis-open.org/odata/ns/edm\"><EntityType
Name=\"Person\"><Key><PropertyRef Name=\"UserName\" /></Key><Property
Name=\"UserName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"FirstName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"LastName\" Type=\"Edm.Stri [...]
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:16:02 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/xml; charset=utf-8"
+ }
+ },
+ "uuid" : "330a90d0-592f-46c6-80f9-cf15b055f9da",
+ "persistent" : true,
+ "scenarioName" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata",
+ "requiredScenarioState" :
"scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-5",
+ "insertionIndex" : 4
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-3e0fad91-a570-4947-9e67-3823c33076ea.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-3e0fad91-a570-4947-9e67-3823c33076ea.json
new file mode 100644
index 0000000000..f73aa384fc
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-3e0fad91-a570-4947-9e67-3823c33076ea.json
@@ -0,0 +1,29 @@
+{
+ "id" : "3e0fad91-a570-4947-9e67-3823c33076ea",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_metadata",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/$metadata",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" : "<?xml version=\"1.0\" encoding=\"utf-8\"?><edmx:Edmx
Version=\"4.0\"
xmlns:edmx=\"http://docs.oasis-open.org/odata/ns/edmx\"><edmx:DataServices><Schema
Namespace=\"Trippin\"
xmlns=\"http://docs.oasis-open.org/odata/ns/edm\"><EntityType
Name=\"Person\"><Key><PropertyRef Name=\"UserName\" /></Key><Property
Name=\"UserName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"FirstName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"LastName\" Type=\"Edm.Stri [...]
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:59 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/xml; charset=utf-8"
+ }
+ },
+ "uuid" : "3e0fad91-a570-4947-9e67-3823c33076ea",
+ "persistent" : true,
+ "scenarioName" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata",
+ "requiredScenarioState" :
"scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-4",
+ "newScenarioState" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-5",
+ "insertionIndex" : 5
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-9e008580-1cb1-4fd1-8135-3d64745024a9.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-9e008580-1cb1-4fd1-8135-3d64745024a9.json
new file mode 100644
index 0000000000..29305b6436
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-9e008580-1cb1-4fd1-8135-3d64745024a9.json
@@ -0,0 +1,29 @@
+{
+ "id" : "9e008580-1cb1-4fd1-8135-3d64745024a9",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_metadata",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/$metadata",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" : "<?xml version=\"1.0\" encoding=\"utf-8\"?><edmx:Edmx
Version=\"4.0\"
xmlns:edmx=\"http://docs.oasis-open.org/odata/ns/edmx\"><edmx:DataServices><Schema
Namespace=\"Trippin\"
xmlns=\"http://docs.oasis-open.org/odata/ns/edm\"><EntityType
Name=\"Person\"><Key><PropertyRef Name=\"UserName\" /></Key><Property
Name=\"UserName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"FirstName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"LastName\" Type=\"Edm.Stri [...]
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:45 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/xml; charset=utf-8"
+ }
+ },
+ "uuid" : "9e008580-1cb1-4fd1-8135-3d64745024a9",
+ "persistent" : true,
+ "scenarioName" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata",
+ "requiredScenarioState" :
"scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-2",
+ "newScenarioState" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-3",
+ "insertionIndex" : 11
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-c0873f71-c4e2-4b98-a992-df3accaa15db.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-c0873f71-c4e2-4b98-a992-df3accaa15db.json
new file mode 100644
index 0000000000..a0666c59bf
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_metadata-c0873f71-c4e2-4b98-a992-df3accaa15db.json
@@ -0,0 +1,29 @@
+{
+ "id" : "c0873f71-c4e2-4b98-a992-df3accaa15db",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_metadata",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/$metadata",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" : "<?xml version=\"1.0\" encoding=\"utf-8\"?><edmx:Edmx
Version=\"4.0\"
xmlns:edmx=\"http://docs.oasis-open.org/odata/ns/edmx\"><edmx:DataServices><Schema
Namespace=\"Trippin\"
xmlns=\"http://docs.oasis-open.org/odata/ns/edm\"><EntityType
Name=\"Person\"><Key><PropertyRef Name=\"UserName\" /></Key><Property
Name=\"UserName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"FirstName\" Type=\"Edm.String\" Nullable=\"false\" /><Property
Name=\"LastName\" Type=\"Edm.Stri [...]
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:42 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/xml; charset=utf-8"
+ }
+ },
+ "uuid" : "c0873f71-c4e2-4b98-a992-df3accaa15db",
+ "persistent" : true,
+ "scenarioName" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata",
+ "requiredScenarioState" : "Started",
+ "newScenarioState" : "scenario-2-(S(msg045tp30x3dd2gs4dy1su2))-$metadata-2",
+ "insertionIndex" : 13
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_people-3d065a98-0189-48f5-b34b-069d78fcf30c.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_people-3d065a98-0189-48f5-b34b-069d78fcf30c.json
new file mode 100644
index 0000000000..0368bbac75
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_people-3d065a98-0189-48f5-b34b-069d78fcf30c.json
@@ -0,0 +1,32 @@
+{
+ "id" : "3d065a98-0189-48f5-b34b-069d78fcf30c",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_people",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People",
+ "method" : "POST",
+ "bodyPatterns" : [ {
+ "equalToJson" :
"{\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\"}",
+ "ignoreArrayOrder" : true,
+ "ignoreExtraElements" : true
+ } ]
+ },
+ "response" : {
+ "status" : 201,
+ "body" :
"{\"@odata.context\":\"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/$metadata#People/$entity\",\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":null,\"Gender\":\"Male\",\"Age\":null,\"Emails\":[],\"FavoriteFeature\":\"Feature1\",\"Features\":[],\"AddressInfo\":[],\"HomeAddress\":null}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:43 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Location" :
"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "3d065a98-0189-48f5-b34b-069d78fcf30c",
+ "persistent" : true,
+ "insertionIndex" : 12
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-0de8fed9-0206-42ee-8a37-e8e12af29bef.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-0de8fed9-0206-42ee-8a37-e8e12af29bef.json
new file mode 100644
index 0000000000..2ee4625f56
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-0de8fed9-0206-42ee-8a37-e8e12af29bef.json
@@ -0,0 +1,29 @@
+{
+ "id" : "0de8fed9-0206-42ee-8a37-e8e12af29bef",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" :
"{\"@odata.context\":\"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/$metadata#People/$entity\",\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":null,\"Gender\":\"Male\",\"Age\":null,\"Emails\":[],\"FavoriteFeature\":\"Feature1\",\"Features\":[],\"AddressInfo\":[],\"HomeAddress\":null}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:48 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "0de8fed9-0206-42ee-8a37-e8e12af29bef",
+ "persistent" : true,
+ "scenarioName" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')",
+ "requiredScenarioState" : "Started",
+ "newScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-2",
+ "insertionIndex" : 10
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-1dc96a47-53cd-4833-ad05-7741d80f786f.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-1dc96a47-53cd-4833-ad05-7741d80f786f.json
new file mode 100644
index 0000000000..e55ba388ee
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-1dc96a47-53cd-4833-ad05-7741d80f786f.json
@@ -0,0 +1,29 @@
+{
+ "id" : "1dc96a47-53cd-4833-ad05-7741d80f786f",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "PUT",
+ "bodyPatterns" : [ {
+ "equalToJson" :
"{\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":\"James\"}",
+ "ignoreArrayOrder" : true,
+ "ignoreExtraElements" : true
+ } ]
+ },
+ "response" : {
+ "status" : 204,
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:53 GMT",
+ "X-Powered-By" : "ASP.NET"
+ }
+ },
+ "uuid" : "1dc96a47-53cd-4833-ad05-7741d80f786f",
+ "persistent" : true,
+ "insertionIndex" : 7
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-304dabfb-7440-413c-8e79-98d8d9a128b8.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-304dabfb-7440-413c-8e79-98d8d9a128b8.json
new file mode 100644
index 0000000000..fa8f50b807
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-304dabfb-7440-413c-8e79-98d8d9a128b8.json
@@ -0,0 +1,29 @@
+{
+ "id" : "304dabfb-7440-413c-8e79-98d8d9a128b8",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" :
"{\"@odata.context\":\"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/$metadata#People/$entity\",\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":\"James\",\"Gender\":\"Male\",\"Age\":null,\"Emails\":[],\"FavoriteFeature\":\"Feature1\",\"Features\":[],\"AddressInfo\":[],\"HomeAddress\":null}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:56 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "304dabfb-7440-413c-8e79-98d8d9a128b8",
+ "persistent" : true,
+ "scenarioName" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')",
+ "requiredScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-3",
+ "newScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-4",
+ "insertionIndex" : 6
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-98c362e6-d716-4c73-be36-9feaaacc4770.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-98c362e6-d716-4c73-be36-9feaaacc4770.json
new file mode 100644
index 0000000000..f58431beb0
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-98c362e6-d716-4c73-be36-9feaaacc4770.json
@@ -0,0 +1,29 @@
+{
+ "id" : "98c362e6-d716-4c73-be36-9feaaacc4770",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" :
"{\"@odata.context\":\"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/$metadata#People/$entity\",\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":null,\"Gender\":\"Male\",\"Age\":null,\"Emails\":[],\"FavoriteFeature\":\"Feature1\",\"Features\":[],\"AddressInfo\":[],\"HomeAddress\":null}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:15:51 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "98c362e6-d716-4c73-be36-9feaaacc4770",
+ "persistent" : true,
+ "scenarioName" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')",
+ "requiredScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-2",
+ "newScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-3",
+ "insertionIndex" : 8
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d7806e3f-fdc3-40fa-b29d-6dde378ecd26.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d7806e3f-fdc3-40fa-b29d-6dde378ecd26.json
new file mode 100644
index 0000000000..1718412c98
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d7806e3f-fdc3-40fa-b29d-6dde378ecd26.json
@@ -0,0 +1,29 @@
+{
+ "id" : "d7806e3f-fdc3-40fa-b29d-6dde378ecd26",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 200,
+ "body" :
"{\"@odata.context\":\"https://services.odata.org/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/$metadata#People/$entity\",\"UserName\":\"lewisblack\",\"FirstName\":\"Lewis\",\"LastName\":\"Black\",\"MiddleName\":\"James\",\"Gender\":\"Male\",\"Age\":null,\"Emails\":[],\"FavoriteFeature\":\"Feature1\",\"Features\":[],\"AddressInfo\":[],\"HomeAddress\":null}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:16:03 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "d7806e3f-fdc3-40fa-b29d-6dde378ecd26",
+ "persistent" : true,
+ "scenarioName" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')",
+ "requiredScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-4",
+ "newScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-5",
+ "insertionIndex" : 3
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0.json
new file mode 100644
index 0000000000..c8dd2c3523
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0.json
@@ -0,0 +1,23 @@
+{
+ "id" : "d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "DELETE"
+ },
+ "response" : {
+ "status" : 204,
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:16:05 GMT",
+ "X-Powered-By" : "ASP.NET"
+ }
+ },
+ "uuid" : "d9f2a2de-6caa-4eb8-b8ae-c146c9187cb0",
+ "persistent" : true,
+ "insertionIndex" : 2
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-eddd9fd8-d57a-4b27-abe3-9e7c94efe205.json
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-eddd9fd8-d57a-4b27-abe3-9e7c94efe205.json
new file mode 100644
index 0000000000..8eddd2aa62
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/smsg045tp30x3dd2gs4dy1su2_peoplelewisblack-eddd9fd8-d57a-4b27-abe3-9e7c94efe205.json
@@ -0,0 +1,28 @@
+{
+ "id" : "eddd9fd8-d57a-4b27-abe3-9e7c94efe205",
+ "name" : "smsg045tp30x3dd2gs4dy1su2_peoplelewisblack",
+ "request" : {
+ "url" : "/(S(msg045tp30x3dd2gs4dy1su2))/People('lewisblack')",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 404,
+ "body" : "{\"error\":{\"code\":\"\",\"message\":\"The request resource is
not found.\"}}",
+ "headers" : {
+ "Cache-Control" : "no-cache",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "OData-Version" : "4.0",
+ "Pragma" : "no-cache",
+ "Expires" : "-1",
+ "Date" : "Thu, 07 Aug 2025 08:16:06 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "application/json; charset=utf-8;
odata.metadata=minimal"
+ }
+ },
+ "uuid" : "eddd9fd8-d57a-4b27-abe3-9e7c94efe205",
+ "persistent" : true,
+ "scenarioName" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')",
+ "requiredScenarioState" :
"scenario-1-(S(msg045tp30x3dd2gs4dy1su2))-People('lewisblack')-5",
+ "insertionIndex" : 1
+}
\ No newline at end of file
diff --git
a/integration-tests/olingo4/src/test/resources/mappings/trippinrestierservice_smsg045tp30x3dd2gs4dy1su2-cec4fed0-b2c5-405b-ad73-6ca1206baec9.json
b/integration-tests/olingo4/src/test/resources/mappings/trippinrestierservice_smsg045tp30x3dd2gs4dy1su2-cec4fed0-b2c5-405b-ad73-6ca1206baec9.json
new file mode 100644
index 0000000000..d90e8e9da5
--- /dev/null
+++
b/integration-tests/olingo4/src/test/resources/mappings/trippinrestierservice_smsg045tp30x3dd2gs4dy1su2-cec4fed0-b2c5-405b-ad73-6ca1206baec9.json
@@ -0,0 +1,23 @@
+{
+ "id" : "cec4fed0-b2c5-405b-ad73-6ca1206baec9",
+ "name" : "trippinrestierservice_smsg045tp30x3dd2gs4dy1su2",
+ "request" : {
+ "url" : "/TripPinRESTierService/(S(msg045tp30x3dd2gs4dy1su2))/",
+ "method" : "GET"
+ },
+ "response" : {
+ "status" : 500,
+ "body" : "The page cannot be displayed because an internal server error
has occurred.",
+ "headers" : {
+ "Cache-Control" : "private",
+ "Server" : "Microsoft-IIS/10.0",
+ "X-AspNet-Version" : "4.0.30319",
+ "Date" : "Thu, 07 Aug 2025 08:15:39 GMT",
+ "X-Powered-By" : "ASP.NET",
+ "Content-Type" : "text/html"
+ }
+ },
+ "uuid" : "cec4fed0-b2c5-405b-ad73-6ca1206baec9",
+ "persistent" : true,
+ "insertionIndex" : 14
+}
\ No newline at end of file