Skip to content

Commit 3256d30

Browse files
Merge pull request #16 from companieshouse/pci-782-update-checkout-payment-details-url
PCI-782: Sync up request URLs with API spec
2 parents ad736ef + fa53b55 commit 3256d30

File tree

5 files changed

+25
-26
lines changed

5 files changed

+25
-26
lines changed

src/main/java/uk/gov/companieshouse/orders/api/controller/BasketController.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -125,7 +125,7 @@ public ResponseEntity<?> addDeliveryDetailsToBasket(final @Valid @RequestBody Ad
125125
return ResponseEntity.status(HttpStatus.OK).body(returnedBasket.getData());
126126
}
127127

128-
@PostMapping("${uk.gov.companieshouse.orders.api.basket.checkout}")
128+
@PostMapping("${uk.gov.companieshouse.orders.api.basket.checkouts}")
129129
public ResponseEntity<?> checkoutBasket(@RequestBody(required = false) String json,
130130
HttpServletRequest request,
131131
final @RequestHeader(REQUEST_ID_HEADER_NAME) String requestId) {
@@ -159,7 +159,7 @@ public ResponseEntity<?> checkoutBasket(@RequestBody(required = false) String js
159159
return ResponseEntity.status(HttpStatus.OK).body(checkout);
160160
}
161161

162-
@PatchMapping("${uk.gov.companieshouse.orders.api.basket.payment}/{id}")
162+
@PatchMapping("${uk.gov.companieshouse.orders.api.basket.checkouts}/{id}/payment")
163163
public ResponseEntity<String> patchBasketPaymentDetails(final @RequestBody BasketPaymentRequestDTO basketPaymentRequestDTO,
164164
final @PathVariable String id,
165165
HttpServletRequest request,
Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,6 @@
11
uk.gov.companieshouse.orders.api.health=/healthcheck
22
uk.gov.companieshouse.orders.api.basket=/basket
33
uk.gov.companieshouse.orders.api.basket.items=/basket/items
4-
uk.gov.companieshouse.orders.api.basket.checkout=/basket/checkout
5-
uk.gov.companieshouse.orders.api.basket.payment=/basket/payment
4+
uk.gov.companieshouse.orders.api.basket.checkouts=/basket/checkouts
65
spring.data.mongodb.uri=${MONGODB_URL}
7-
spring.data.mongodb.field-naming-strategy=uk.gov.companieshouse.orders.api.model.NoIsSnakeCaseFieldNamingStrategy
6+
spring.data.mongodb.field-naming-strategy=uk.gov.companieshouse.orders.api.model.NoIsSnakeCaseFieldNamingStrategy

src/test/java/uk/gov/companieshouse/orders/api/controller/BasketControllerIntegrationTest.java

Lines changed: 13 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -190,7 +190,7 @@ public void checkoutBasketSuccessfullyCreatesCheckoutWhenBasketIsValid() throws
190190
ResultCaptor<Checkout> resultCaptor = new ResultCaptor<>();
191191
doAnswer(resultCaptor).when(checkoutService).createCheckout(any(Certificate.class), any(String.class));
192192

193-
mockMvc.perform(post("/basket/checkout")
193+
mockMvc.perform(post("/basket/checkouts")
194194
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
195195
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE))
196196
.andExpect(status().isOk());
@@ -209,7 +209,7 @@ public void checkoutBasketfFailsToCreateCheckoutIfBasketIsEmpty() throws Excepti
209209
basket.setId(ERIC_IDENTITY_VALUE);
210210
basketRepository.save(basket);
211211

212-
mockMvc.perform(post("/basket/checkout")
212+
mockMvc.perform(post("/basket/checkouts")
213213
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
214214
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE))
215215
.andExpect(status().isConflict());
@@ -221,7 +221,7 @@ public void checkoutBasketfFailsToCreateCheckoutIfBasketIsEmpty() throws Excepti
221221
@DisplayName("Checkout Basket fails to create checkout and returns 409, when basket does not exist")
222222
public void checkoutBasketFailsToCreateCheckoutIfBasketDoesNotExist() throws Exception {
223223

224-
mockMvc.perform(post("/basket/checkout")
224+
mockMvc.perform(post("/basket/checkouts")
225225
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
226226
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE))
227227
.andExpect(status().isConflict());
@@ -241,7 +241,7 @@ public void checkoutBasketFailsToCreateCheckoutWhenItFailsToGetAnItem() throws E
241241

242242
when(apiClientService.getItem(ITEM_URI)).thenThrow(new Exception());
243243

244-
mockMvc.perform(post("/basket/checkout")
244+
mockMvc.perform(post("/basket/checkouts")
245245
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
246246
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE))
247247
.andExpect(status().isBadRequest());
@@ -253,7 +253,7 @@ public void checkoutBasketFailsToCreateCheckoutWhenItFailsToGetAnItem() throws E
253253
@DisplayName("Check out basket returns 403 if body is present")
254254
public void checkoutBasketReturnsBadRequestIfBodyIsPresent() throws Exception {
255255

256-
mockMvc.perform(post("/basket/checkout")
256+
mockMvc.perform(post("/basket/checkouts")
257257
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
258258
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
259259
.contentType(MediaType.APPLICATION_JSON)
@@ -383,7 +383,7 @@ public void patchBasketPaymentDetailsReturnsOK() throws Exception {
383383
basketPaymentRequestDTO.setPaymentReference("reference");
384384
basketPaymentRequestDTO.setStatus(PaymentStatus.PAID);
385385

386-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
386+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
387387
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
388388
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
389389
.contentType(MediaType.APPLICATION_JSON)
@@ -410,7 +410,7 @@ public void patchBasketPaymentDetailsClearsBasketStatusPaid() throws Exception {
410410
basketPaymentRequestDTO.setPaymentReference("reference");
411411
basketPaymentRequestDTO.setStatus(PaymentStatus.PAID);
412412

413-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
413+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
414414
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
415415
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
416416
.contentType(MediaType.APPLICATION_JSON)
@@ -436,7 +436,7 @@ public void patchBasketPaymentDetailsDoesNotClearBasketStatusNotPaid() throws Ex
436436
basketPaymentRequestDTO.setPaymentReference("reference");
437437
basketPaymentRequestDTO.setStatus(PaymentStatus.FAILED);
438438

439-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
439+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
440440
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
441441
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
442442
.contentType(MediaType.APPLICATION_JSON)
@@ -470,7 +470,7 @@ public void patchBasketPaymentDetailsUpdatesUpdatedAt() throws Exception {
470470
basketPaymentRequestDTO.setPaymentReference("reference");
471471
basketPaymentRequestDTO.setStatus(PaymentStatus.PAID);
472472

473-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
473+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
474474
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
475475
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
476476
.contentType(MediaType.APPLICATION_JSON)
@@ -497,7 +497,7 @@ public void paidPatchBasketPaymentDetailsCreatesOrder() throws Exception {
497497

498498
final LocalDateTime intervalStart = LocalDateTime.now();
499499

500-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
500+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
501501
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
502502
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
503503
.contentType(MediaType.APPLICATION_JSON)
@@ -521,7 +521,7 @@ public void failedPatchBasketPaymentDetailsCreatesNoOrder() throws Exception {
521521
basketPaymentRequestDTO.setPaymentReference("reference");
522522
basketPaymentRequestDTO.setStatus(PaymentStatus.FAILED);
523523

524-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
524+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
525525
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
526526
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
527527
.contentType(MediaType.APPLICATION_JSON)
@@ -543,7 +543,7 @@ public void paidPatchBasketPaymentDetailsDoesNotCreateUnknownOrder() throws Exce
543543
basketPaymentRequestDTO.setPaymentReference("reference");
544544
basketPaymentRequestDTO.setStatus(PaymentStatus.PAID);
545545

546-
mockMvc.perform(patch("/basket/payment/" + UNKNOWN_CHECKOUT_ID)
546+
mockMvc.perform(patch("/basket/checkouts/" + UNKNOWN_CHECKOUT_ID + "/payment")
547547
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
548548
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
549549
.contentType(MediaType.APPLICATION_JSON)
@@ -573,7 +573,7 @@ public void duplicatePaidPatchBasketPaymentDetailsDoesNotRecreateOrder() throws
573573
basketPaymentRequestDTO.setPaymentReference("reference");
574574
basketPaymentRequestDTO.setStatus(PaymentStatus.PAID);
575575

576-
mockMvc.perform(patch("/basket/payment/" + CHECKOUT_ID)
576+
mockMvc.perform(patch("/basket/checkouts/" + CHECKOUT_ID + "/payment")
577577
.header(REQUEST_ID_HEADER_NAME, TOKEN_REQUEST_ID_VALUE)
578578
.header(ERIC_IDENTITY_HEADER_NAME, ERIC_IDENTITY_VALUE)
579579
.contentType(MediaType.APPLICATION_JSON)

src/test/postman/Orders_API.postman_collection.json

Lines changed: 7 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -84,13 +84,13 @@
8484
}
8585
},
8686
"url": {
87-
"raw": "{{base_url}}/basket/checkout",
87+
"raw": "{{base_url}}/basket/checkouts",
8888
"host": [
8989
"{{base_url}}"
9090
],
9191
"path": [
9292
"basket",
93-
"checkout"
93+
"checkouts"
9494
]
9595
}
9696
},
@@ -142,14 +142,15 @@
142142
}
143143
},
144144
"url": {
145-
"raw": "{{base_url}}/basket/payment/5e4ba64068f0760f8ff5487f",
145+
"raw": "{{base_url}}/basket/checkouts/5e5d288a628ef271e2fa40d8/payment",
146146
"host": [
147147
"{{base_url}}"
148148
],
149149
"path": [
150150
"basket",
151-
"payment",
152-
"5e4ba64068f0760f8ff5487f"
151+
"checkouts",
152+
"5e5d288a628ef271e2fa40d8",
153+
"payment"
153154
]
154155
}
155156
},
@@ -349,4 +350,4 @@
349350
}
350351
],
351352
"protocolProfileBehavior": {}
352-
}
353+
}
Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
uk.gov.companieshouse.orders.api.health=/healthcheck
22
uk.gov.companieshouse.orders.api.basket=/basket
33
uk.gov.companieshouse.orders.api.basket.items=/basket/items
4-
uk.gov.companieshouse.orders.api.basket.checkout=/basket/checkout
5-
uk.gov.companieshouse.orders.api.basket.payment=/basket/payment
4+
uk.gov.companieshouse.orders.api.basket.checkouts=/basket/checkouts

0 commit comments

Comments
 (0)