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 .getPartialUpdatedOrder ;
5
+ import static io .github .mfaisalkhatri .api .restfulecommerce .testdata .OrderDataBuilder .getUpdatedOrder ;
6
+ import static io .github .mfaisalkhatri .api .restfulecommerce .testdata .TokenBuilder .getCredentials ;
7
+ import static org .testng .Assert .assertEquals ;
8
+ import static org .testng .Assert .assertNotNull ;
9
+
10
+ import java .util .ArrayList ;
11
+ import java .util .List ;
3
12
4
13
import com .microsoft .playwright .APIResponse ;
5
14
import com .microsoft .playwright .options .RequestOptions ;
6
15
import io .github .mfaisalkhatri .api .restfulecommerce .testdata .OrderData ;
16
+ import lombok .extern .slf4j .Slf4j ;
7
17
import org .json .JSONArray ;
8
18
import org .json .JSONObject ;
9
19
import org .testng .annotations .BeforeClass ;
10
20
import org .testng .annotations .Test ;
11
21
12
- import java .util .ArrayList ;
13
- import java .util .List ;
14
-
15
- import static io .github .mfaisalkhatri .api .restfulecommerce .testdata .OrderDataBuilder .*;
16
- import static io .github .mfaisalkhatri .api .restfulecommerce .testdata .TokenBuilder .getCredentials ;
17
- import static org .testng .Assert .assertEquals ;
18
- import static org .testng .Assert .assertNotNull ;
19
-
22
+ @ Slf4j
20
23
public class HappyPathTests extends BaseTest {
21
24
22
25
private List <OrderData > orderList ;
@@ -33,9 +36,7 @@ public void testSetup() {
33
36
public void testShouldPerformHealthCheckOfServer () {
34
37
final APIResponse response = this .request .get ("/health" );
35
38
36
- final Logger logger = new Logger (response );
37
- logger .logResponseDetails ();
38
-
39
+ logResponse (response );
39
40
final JSONObject responseObject = new JSONObject (response .text ());
40
41
41
42
assertEquals (response .status (), 200 );
@@ -54,6 +55,8 @@ public void testShouldCreateNewOrders() {
54
55
final APIResponse response = this .request .post ("/addOrder" , RequestOptions .create ()
55
56
.setData (this .orderList ));
56
57
58
+ logResponse (response );
59
+
57
60
final JSONObject responseObject = new JSONObject (response .text ());
58
61
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
59
62
@@ -68,16 +71,14 @@ public void testShouldCreateNewOrders() {
68
71
this .userId =ordersArray .getJSONObject (0 ).getString ("user_id" );
69
72
this .productId =ordersArray .getJSONObject (0 ).getString ("product_id" );
70
73
71
-
72
74
}
73
75
74
76
@ Test
75
77
public void testShouldGetAllOrders () {
76
78
77
79
final APIResponse response = this .request .get ("/getAllOrders" );
78
80
79
- final Logger logger = new Logger (response );
80
- logger .logResponseDetails ();
81
+ logResponse (response );
81
82
82
83
final JSONObject responseObject = new JSONObject (response .text ());
83
84
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
@@ -92,10 +93,10 @@ public void testShouldGetAllOrders() {
92
93
@ Test
93
94
public void testShouldGetOrderUsingOrderId () {
94
95
final int orderId = 1 ;
95
- final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ().setQueryParam ("id" , orderId ));
96
+ final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ()
97
+ .setQueryParam ("id" , orderId ));
96
98
97
- final Logger logger = new Logger (response );
98
- logger .logResponseDetails ();
99
+ logResponse (response );
99
100
100
101
final JSONObject responseObject = new JSONObject (response .text ());
101
102
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
@@ -109,10 +110,10 @@ public void testShouldGetOrderUsingOrderId() {
109
110
@ Test
110
111
public void testShouldGetOrdersUsingUserId () {
111
112
112
- final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ().setQueryParam ("user_id" , this .userId ));
113
+ final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ()
114
+ .setQueryParam ("user_id" , this .userId ));
113
115
114
- final Logger logger = new Logger (response );
115
- logger .logResponseDetails ();
116
+ logResponse (response );
116
117
117
118
final JSONObject responseObject = new JSONObject (response .text ());
118
119
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
@@ -126,10 +127,10 @@ public void testShouldGetOrdersUsingUserId() {
126
127
@ Test
127
128
public void testShouldGetOrdersUsingProductId () {
128
129
129
- final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ().setQueryParam ("product_id" , this .productId ));
130
+ final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ()
131
+ .setQueryParam ("product_id" , this .productId ));
130
132
131
- final Logger logger = new Logger (response );
132
- logger .logResponseDetails ();
133
+ logResponse (response );
133
134
134
135
final JSONObject responseObject = new JSONObject (response .text ());
135
136
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
@@ -148,12 +149,10 @@ public void testShouldGetOrdersUsingOrderIdProductIdAndUserId() {
148
149
.setQueryParam ("product_id" , this .productId )
149
150
.setQueryParam ("user_id" , this .userId ));
150
151
151
- final Logger logger = new Logger (response );
152
- logger .logResponseDetails ();
152
+ logResponse (response );
153
153
154
154
assertEquals (response .status (), 200 );
155
155
156
-
157
156
final JSONObject responseObject = new JSONObject (response .text ());
158
157
final JSONArray ordersArray = responseObject .getJSONArray ("orders" );
159
158
@@ -167,10 +166,10 @@ public void testShouldGetOrdersUsingOrderIdProductIdAndUserId() {
167
166
168
167
@ Test
169
168
public void testTokenGeneration () {
170
- final APIResponse response = this .request .post ("/auth" , RequestOptions .create ().setData (getCredentials ()));
169
+ final APIResponse response = this .request .post ("/auth" , RequestOptions .create ()
170
+ .setData (getCredentials ()));
171
171
172
- final Logger logger = new Logger (response );
173
- logger .logResponseDetails ();
172
+ logResponse (response );
174
173
175
174
final JSONObject responseObject = new JSONObject (response .text ());
176
175
@@ -182,7 +181,10 @@ public void testTokenGeneration() {
182
181
@ Test
183
182
public void testShouldUpdateTheOrderUsingPut () {
184
183
185
- final APIResponse authResponse = this .request .post ("/auth" , RequestOptions .create ().setData (getCredentials ()));
184
+ final APIResponse authResponse = this .request .post ("/auth" , RequestOptions .create ()
185
+ .setData (getCredentials ()));
186
+
187
+ logResponse (authResponse );
186
188
187
189
final JSONObject authResponseObject = new JSONObject (authResponse .text ());
188
190
final String token = authResponseObject .get ("token" ).toString ();
@@ -194,6 +196,8 @@ public void testShouldUpdateTheOrderUsingPut() {
194
196
.setHeader ("Authorization" , token )
195
197
.setData (updatedOrder ));
196
198
199
+ logResponse (response );
200
+
197
201
final JSONObject updateOrderResponseObject = new JSONObject (response .text ());
198
202
final JSONObject orderObject = updateOrderResponseObject .getJSONObject ("order" );
199
203
@@ -212,6 +216,8 @@ public void testShouldPartialUpdateTheOrderUsingPatch() {
212
216
213
217
final APIResponse authResponse = this .request .post ("/auth" , RequestOptions .create ().setData (getCredentials ()));
214
218
219
+ logResponse (authResponse );
220
+
215
221
final JSONObject authResponseObject = new JSONObject (authResponse .text ());
216
222
final String token = authResponseObject .get ("token" ).toString ();
217
223
@@ -221,9 +227,11 @@ public void testShouldPartialUpdateTheOrderUsingPatch() {
221
227
final APIResponse response = this .request .patch ("/partialUpdateOrder/" + orderId , RequestOptions .create ()
222
228
.setHeader ("Authorization" , token )
223
229
.setData (partialUpdatedOrder ));
224
-
230
+
231
+ logResponse (response );
232
+
225
233
final JSONObject updateOrderResponseObject = new JSONObject (response .text ());
226
- final JSONObject orderObject = updateOrderResponseObject .getJSONObject ("order" );
234
+ final JSONObject orderObject = updateOrderResponseObject .getJSONObject ("order" );
227
235
228
236
assertEquals (response .status (), 200 );
229
237
assertEquals (updateOrderResponseObject .get ("message" ), "Order updated successfully!" );
@@ -235,7 +243,10 @@ public void testShouldPartialUpdateTheOrderUsingPatch() {
235
243
@ Test
236
244
public void testShouldDeleteTheOrder () {
237
245
238
- final APIResponse authResponse = this .request .post ("/auth" , RequestOptions .create ().setData (getCredentials ()));
246
+ final APIResponse authResponse = this .request .post ("/auth" , RequestOptions .create ()
247
+ .setData (getCredentials ()));
248
+
249
+ logResponse (authResponse );
239
250
240
251
final JSONObject authResponseObject = new JSONObject (authResponse .text ());
241
252
final String token = authResponseObject .get ("token" ).toString ();
@@ -245,19 +256,17 @@ public void testShouldDeleteTheOrder() {
245
256
final APIResponse response = this .request .delete ("/deleteOrder/" + orderId , RequestOptions .create ()
246
257
.setHeader ("Authorization" , token ));
247
258
248
- final Logger logger = new Logger (response );
249
- logger .logResponseDetails ();
250
-
259
+ logResponse (response );
251
260
assertEquals (response .status (), 204 );
252
261
}
253
262
254
263
@ Test
255
264
public void testShouldNotRetrieveDeletedOrder () {
256
265
final int orderId = 1 ;
257
- final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ().setQueryParam ("id" , orderId ));
266
+ final APIResponse response = this .request .get ("/getOrder" , RequestOptions .create ()
267
+ .setQueryParam ("id" , orderId ));
258
268
259
- final Logger logger = new Logger (response );
260
- logger .logResponseDetails ();
269
+ logResponse (response );
261
270
262
271
assertEquals (response .status (), 404 );
263
272
0 commit comments