|
1 | 1 | package io.github.mfaisalkhatri.api.restfulecommerce;
|
2 | 2 |
|
| 3 | +import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderDataBuilder.getNewOrder; |
| 4 | +import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderDataBuilder.getOrderDataWithMissingProductId; |
| 5 | +import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderDataBuilder.getPartialUpdatedOrder; |
| 6 | +import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderDataBuilder.getUpdatedOrder; |
| 7 | +import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.TokenBuilder.getCredentials; |
| 8 | +import static org.testng.Assert.assertEquals; |
| 9 | + |
| 10 | +import java.util.ArrayList; |
| 11 | +import java.util.List; |
| 12 | + |
3 | 13 | import com.microsoft.playwright.APIResponse;
|
4 | 14 | import com.microsoft.playwright.options.RequestOptions;
|
5 | 15 | import io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderData;
|
6 | 16 | import org.json.JSONObject;
|
7 | 17 | import org.testng.annotations.Test;
|
8 | 18 |
|
9 |
| -import java.util.ArrayList; |
10 |
| -import java.util.List; |
11 |
| - |
12 |
| -import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.OrderDataBuilder.*; |
13 |
| -import static io.github.mfaisalkhatri.api.restfulecommerce.testdata.TokenBuilder.getCredentials; |
14 |
| -import static org.testng.Assert.assertEquals; |
15 |
| - |
16 | 19 | public class SadPathTests extends BaseTest {
|
17 | 20 |
|
18 | 21 |
|
@@ -242,4 +245,50 @@ public void testShouldNotPartialUpdateOrderWithInvalidToken() {
|
242 | 245 | assertEquals(response.status(), 400);
|
243 | 246 | assertEquals(responseObject.get("message"), "Failed to authenticate token!");
|
244 | 247 | }
|
| 248 | + |
| 249 | + @Test |
| 250 | + public void testShouldNotDeleteOrder_WhenTokenIsMissing () { |
| 251 | + |
| 252 | + int orderId = 1; |
| 253 | + |
| 254 | + final APIResponse response = this.request.delete ("/deleteOrder/" + orderId); |
| 255 | + |
| 256 | + final JSONObject responseObject = new JSONObject (response.text ()); |
| 257 | + |
| 258 | + assertEquals (response.status (), 403); |
| 259 | + assertEquals (responseObject.get ("message"), "Forbidden! Token is missing!"); |
| 260 | + } |
| 261 | + |
| 262 | + @Test |
| 263 | + public void testShouldNotDeleteOrder_WhenOrderIdIsNotFound () { |
| 264 | + final APIResponse authResponse = this.request.post ("/auth", RequestOptions.create () |
| 265 | + .setData (getCredentials ())); |
| 266 | + |
| 267 | + final JSONObject authResponseObject = new JSONObject (authResponse.text ()); |
| 268 | + final String token = authResponseObject.get ("token") |
| 269 | + .toString (); |
| 270 | + |
| 271 | + final int orderId = 90; |
| 272 | + |
| 273 | + final APIResponse response = this.request.delete ("/deleteOrder/" + orderId, RequestOptions.create () |
| 274 | + .setHeader ("Authorization", token)); |
| 275 | + |
| 276 | + final JSONObject responseObject = new JSONObject (response.text ()); |
| 277 | + |
| 278 | + assertEquals (response.status (), 404); |
| 279 | + assertEquals (responseObject.get ("message"), "No Order found with the given Order Id!"); |
| 280 | + } |
| 281 | + |
| 282 | + @Test |
| 283 | + public void testShouldNotDeleteOrderWithInvalidToken () { |
| 284 | + final int orderId = 2; |
| 285 | + |
| 286 | + final APIResponse response = this.request.delete ("/deleteOrder/" + orderId, RequestOptions.create () |
| 287 | + .setHeader ("Authorization", "token273678")); |
| 288 | + |
| 289 | + final JSONObject responseObject = new JSONObject (response.text ()); |
| 290 | + |
| 291 | + assertEquals (response.status (), 400); |
| 292 | + assertEquals (responseObject.get ("message"), "Failed to authenticate token!"); |
| 293 | + } |
245 | 294 | }
|
0 commit comments