Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
110 changes: 105 additions & 5 deletions features/change-request/change-request.accept.feature
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ Feature: Accept a change request
"id": "18b07434-9994-451c-aa41-bb45b8386c65",
"resource": "airport",
"targetId": "c39d6f52-84a1-4b73-9e6c-1f8a3d7b5e29",
"target": {
"label": "Ireland West Airport Knock",
"airport": {
"id": "c39d6f52-84a1-4b73-9e6c-1f8a3d7b5e29",
"icaoCode": "EIKN",
"iataCode": "NOC",
"name": "Ireland West Airport Knock"
}
},
"changes": {
"name": "Ireland West Airport Knock",
"cityId": "5a2e8c17-9b64-4d3f-8e71-2c6a9f4b1d83"
Expand All @@ -35,7 +44,9 @@ Feature: Accept a change request
{
"field": "cityId",
"current": "5a2e8c17-9b64-4d3f-8e71-2c6a9f4b1d83",
"proposed": "5a2e8c17-9b64-4d3f-8e71-2c6a9f4b1d83"
"currentLabel": "Shannon",
"proposed": "5a2e8c17-9b64-4d3f-8e71-2c6a9f4b1d83",
"proposedLabel": "Shannon"
}
]
}
Expand Down Expand Up @@ -79,6 +90,15 @@ Feature: Accept a change request
"id": "c751e610-c091-4b05-ae1e-9b1ad86d6f61",
"resource": "airport",
"targetId": "93a9db1c-5047-489c-a018-178c3abd8a02",
"target": {
"label": "Paris Orly",
"airport": {
"id": "93a9db1c-5047-489c-a018-178c3abd8a02",
"icaoCode": "LFPO",
"iataCode": "ORY",
"name": "Paris Orly"
}
},
"changes": {
"shape": [
{
Expand Down Expand Up @@ -217,6 +237,15 @@ Feature: Accept a change request
"id": "acd93eae-b731-4794-9060-b7652bbc9905",
"resource": "airport",
"targetId": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"target": {
"label": "Warsaw Chopin Airport",
"airport": {
"id": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"icaoCode": "EPWA",
"iataCode": "WAW",
"name": "Warsaw Chopin Airport"
}
},
"changes": {
"name": "Warsaw Chopin Airport",
"location": {
Expand Down Expand Up @@ -303,6 +332,15 @@ Feature: Accept a change request
"id": "6fb17bfe-1836-4aaa-b68c-ce72f5440871",
"resource": "airport",
"targetId": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"target": {
"label": "Lotnisko Chopina",
"airport": {
"id": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"icaoCode": "EPWA",
"iataCode": "WAW",
"name": "Lotnisko Chopina"
}
},
"changes": {
"name": "Lotnisko Chopina"
},
Expand Down Expand Up @@ -366,6 +404,15 @@ Feature: Accept a change request
"id": "b0c0a3c7-c369-45ca-8306-8a434cfeac9c",
"resource": "parkingPosition",
"targetId": "ad5a6ebd-dad8-4400-8bb4-b7cee3b00fa9",
"target": {
"label": "B42",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"name": "B42",
"terminalId": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
Expand All @@ -391,7 +438,9 @@ Feature: Accept a change request
{
"field": "terminalId",
"current": "26106c8a-aaee-4b84-bb6c-b5af3389e22f",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
"currentLabel": "T2",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f",
"proposedLabel": "T2"
}
]
}
Expand Down Expand Up @@ -438,6 +487,15 @@ Feature: Accept a change request
"id": "a39dfa76-d9ed-4b1c-8767-767f5a27c634",
"resource": "gate",
"targetId": "4c2d3df4-3b5a-4f3c-9a21-7f1e9cbd2101",
"target": {
"label": "A10",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"parkingPositionId": "77646d11-415c-4090-bc2b-e85cd1814b64"
},
Expand All @@ -457,7 +515,9 @@ Feature: Accept a change request
{
"field": "parkingPositionId",
"current": "77646d11-415c-4090-bc2b-e85cd1814b64",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64"
"currentLabel": "445",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64",
"proposedLabel": "445"
}
]
}
Expand Down Expand Up @@ -503,6 +563,15 @@ Feature: Accept a change request
"id": "a39dfa76-d9ed-4b1c-8767-767f5a27c634",
"resource": "gate",
"targetId": "4c2d3df4-3b5a-4f3c-9a21-7f1e9cbd2101",
"target": {
"label": "A10",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"parkingPositionId": "77646d11-415c-4090-bc2b-e85cd1814b64"
},
Expand All @@ -519,7 +588,9 @@ Feature: Accept a change request
{
"field": "parkingPositionId",
"current": "ad5a6ebd-dad8-4400-8bb4-b7cee3b00fa9",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64"
"currentLabel": "B 42",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64",
"proposedLabel": null
}
]
}
Expand Down Expand Up @@ -565,6 +636,15 @@ Feature: Accept a change request
"id": "68dbe9f1-fed8-4e71-b052-9911511afb5e",
"resource": "gate",
"targetId": "4c2d3df4-3b5a-4f3c-9a21-7f1e9cbd2102",
"target": {
"label": "A11",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"terminalId": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
},
Expand All @@ -581,7 +661,9 @@ Feature: Accept a change request
{
"field": "terminalId",
"current": "d7fd7a84-1589-4a4f-9072-a9773f66e2b5",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
"currentLabel": "T1",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f",
"proposedLabel": null
}
]
}
Expand Down Expand Up @@ -615,6 +697,15 @@ Feature: Accept a change request
"id": "583fc05f-9aa1-465e-ac0e-96ad7f65d008",
"resource": "terminal",
"targetId": "104014ec-110e-483d-9f3c-8f6909fe4823",
"target": {
"label": "TA",
"airport": {
"id": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"icaoCode": "EPWA",
"iataCode": "WAW",
"name": "Warsaw Chopin"
}
},
"changes": {
"averageTaxiTime": 11
},
Expand Down Expand Up @@ -687,6 +778,15 @@ Feature: Accept a change request
"id": "8326750a-99ad-413e-8d9f-01f3974f05ef",
"resource": "runway",
"targetId": "32121288-2550-4b81-a558-9a7193ef6c97",
"target": {
"label": "07C",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"lightingType": "ALS"
},
Expand Down
98 changes: 96 additions & 2 deletions features/change-request/change-request.get.feature
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,15 @@ Feature: Retrieve one change request
"id": "acd93eae-b731-4794-9060-b7652bbc9905",
"resource": "airport",
"targetId": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"target": {
"label": "Warsaw Chopin",
"airport": {
"id": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"icaoCode": "EPWA",
"iataCode": "WAW",
"name": "Warsaw Chopin"
}
},
"changes": {
"name": "Warsaw Chopin Airport",
"location": {
Expand Down Expand Up @@ -57,6 +66,15 @@ Feature: Retrieve one change request
"id": "11fd5e75-3857-424e-ab48-310a29f0d7ce",
"resource": "airport",
"targetId": "c03a79fb-c5ae-46c3-95fe-f3b5dc7b85f3",
"target": {
"label": "Boston Logan Intl",
"airport": {
"id": "c03a79fb-c5ae-46c3-95fe-f3b5dc7b85f3",
"icaoCode": "KBOS",
"iataCode": "BOS",
"name": "Boston Logan Intl"
}
},
"changes": {
"continent": "europe"
},
Expand Down Expand Up @@ -99,6 +117,15 @@ Feature: Retrieve one change request
"id": "acd93eae-b731-4794-9060-b7652bbc9905",
"resource": "airport",
"targetId": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"target": {
"label": "Chopin",
"airport": {
"id": "616cbdd7-ccfc-4687-8cf6-1e7236435046",
"icaoCode": "EPWA",
"iataCode": "WAW",
"name": "Chopin"
}
},
"changes": {
"name": "Warsaw Chopin Airport",
"location": {
Expand Down Expand Up @@ -147,6 +174,15 @@ Feature: Retrieve one change request
"id": "b0c0a3c7-c369-45ca-8306-8a434cfeac9c",
"resource": "parkingPosition",
"targetId": "ad5a6ebd-dad8-4400-8bb4-b7cee3b00fa9",
"target": {
"label": "B 42",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"name": "B42",
"terminalId": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
Expand All @@ -169,7 +205,9 @@ Feature: Retrieve one change request
{
"field": "terminalId",
"current": "d7fd7a84-1589-4a4f-9072-a9773f66e2b5",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f"
"currentLabel": "T1",
"proposed": "26106c8a-aaee-4b84-bb6c-b5af3389e22f",
"proposedLabel": "T2"
}
]
}
Expand All @@ -185,6 +223,15 @@ Feature: Retrieve one change request
"id": "a39dfa76-d9ed-4b1c-8767-767f5a27c634",
"resource": "gate",
"targetId": "4c2d3df4-3b5a-4f3c-9a21-7f1e9cbd2101",
"target": {
"label": "A10",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"parkingPositionId": "77646d11-415c-4090-bc2b-e85cd1814b64"
},
Expand All @@ -201,7 +248,9 @@ Feature: Retrieve one change request
{
"field": "parkingPositionId",
"current": "ad5a6ebd-dad8-4400-8bb4-b7cee3b00fa9",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64"
"currentLabel": "B 42",
"proposed": "77646d11-415c-4090-bc2b-e85cd1814b64",
"proposedLabel": "445"
}
]
}
Expand All @@ -217,6 +266,15 @@ Feature: Retrieve one change request
"id": "8326750a-99ad-413e-8d9f-01f3974f05ef",
"resource": "runway",
"targetId": "32121288-2550-4b81-a558-9a7193ef6c97",
"target": {
"label": "07C",
"airport": {
"id": "f35c094a-bec5-4803-be32-bd80a14b441a",
"icaoCode": "EDDF",
"iataCode": "FRA",
"name": "Frankfurt Rhein/Main"
}
},
"changes": {
"lightingType": "ALS"
},
Expand All @@ -239,6 +297,42 @@ Feature: Retrieve one change request
}
"""

Scenario: As an operations I can see a change request whose runway was removed
Given I am signed in as "operations"
When I send a "DELETE" request to "/api/v1/airport/f35c094a-bec5-4803-be32-bd80a14b441a/runway/32121288-2550-4b81-a558-9a7193ef6c97"
Then the response status should be 204
When I send a "GET" request to "/api/v1/user-data-change-request/8326750a-99ad-413e-8d9f-01f3974f05ef"
Then the response status should be 200
And the response body should contain:
"""json
{
"id": "8326750a-99ad-413e-8d9f-01f3974f05ef",
"resource": "runway",
"targetId": "32121288-2550-4b81-a558-9a7193ef6c97",
"target": null,
"changes": {
"lightingType": "ALS"
},
"status": "pending",
"requestedBy": {
"id": "fcf6f4bc-290d-43a9-843c-409cd47e143d",
"name": "Rick Doe"
},
"decidedBy": null,
"rejectionReason": null,
"decidedAt": null,
"createdAt": "2026-09-12T08:00:00.000Z",
"fields": [
{
"field": "lightingType",
"current": null,
"proposed": "ALS"
}
]
}
"""
And I set database to initial state

Scenario: As an operations I cannot see a change request that does not exist
Given I am signed in as "operations"
When I send a "GET" request to "/api/v1/user-data-change-request/0c9b7a3e-2f1d-4e8a-9b6c-5d4e3f2a1b0c"
Expand Down
Loading
Loading