Skip to content

Commit 6dec6de

Browse files
committed
updated dependency versions and refactored logger class
1 parent ba33077 commit 6dec6de

File tree

2 files changed

+43
-29
lines changed

2 files changed

+43
-29
lines changed

pom.xml

+13-8
Original file line numberDiff line numberDiff line change
@@ -12,25 +12,25 @@
1212

1313
<properties>
1414
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
15-
<playwright-version>1.47.0</playwright-version>
15+
<playwright-version>1.49.0</playwright-version>
1616
<testng-version>7.10.2</testng-version>
1717
<hamcrest-all-version>1.3</hamcrest-all-version>
1818
<json-simple-version>1.1.1</json-simple-version>
19-
<lombok-version>1.18.34</lombok-version>
20-
<datafaker-version>2.4.0</datafaker-version>
19+
<lombok-version>1.18.36</lombok-version>
20+
<datafaker-version>2.4.2</datafaker-version>
2121
<gson-version>2.11.0</gson-version>
2222
<org-json-verion>20240303</org-json-verion>
23-
<jackson-databind-version>2.18.0</jackson-databind-version>
23+
<jackson-databind-version>2.18.2</jackson-databind-version>
2424
<log4j-core-version>2.24.1</log4j-core-version>
2525
<log4j-api-version>2.24.1</log4j-api-version>
26+
<commons-lang3-version>3.17.0</commons-lang3-version>
2627
<maven-compiler-plugin-version>3.13.0</maven-compiler-plugin-version>
2728
<maven-surefire-plugin-version>3.3.1</maven-surefire-plugin-version>
2829
<java-release-version>17</java-release-version>
29-
<maven-enforcer-version>3.5.0</maven-enforcer-version>
30+
<maven-enforcer-version>3.5.2</maven-enforcer-version>
3031
<suite-xml>test-suite/testng.xml</suite-xml>
3132
</properties>
3233
<dependencies>
33-
<!-- https://mvnrepository.com/artifact/com.microsoft.playwright/playwright -->
3434
<dependency>
3535
<groupId>com.microsoft.playwright</groupId>
3636
<artifactId>playwright</artifactId>
@@ -46,7 +46,6 @@
4646
<artifactId>json</artifactId>
4747
<version>${org-json-verion}</version>
4848
</dependency>
49-
<!-- https://mvnrepository.com/artifact/org.projectlombok/lombok -->
5049
<dependency>
5150
<groupId>org.projectlombok</groupId>
5251
<artifactId>lombok</artifactId>
@@ -78,6 +77,12 @@
7877
<artifactId>log4j-core</artifactId>
7978
<version>${log4j-core-version}</version>
8079
</dependency>
80+
<dependency>
81+
<groupId>org.apache.commons</groupId>
82+
<artifactId>commons-lang3</artifactId>
83+
<version>${commons-lang3-version}</version>
84+
</dependency>
85+
8186
</dependencies>
8287
<build>
8388
<pluginManagement>
@@ -133,4 +138,4 @@
133138
</plugins>
134139
</pluginManagement>
135140
</build>
136-
</project>
141+
</project>

src/test/java/io/github/mfaisalkhatri/api/restfulecommerce/Logger.java

+30-21
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
import com.fasterxml.jackson.core.JsonProcessingException;
44
import com.fasterxml.jackson.databind.ObjectMapper;
55
import com.microsoft.playwright.APIResponse;
6+
import org.apache.commons.lang3.StringUtils;
67
import org.apache.logging.log4j.LogManager;
78

89

@@ -17,32 +18,40 @@ public Logger (final APIResponse response) {
1718
}
1819

1920
public void logResponseDetails() {
20-
this.log.info ("Logging Response Details.....");
21-
22-
this.log.info ("Response Headers: \n{}", this.response.headers ());
23-
this.log.info ("Status Code: {}", this.response.status ());
24-
if (this.response.text () != null && !this.response.text ()
25-
.isEmpty () && !this.response.text ()
26-
.isBlank ()) {
27-
this.log.info ("Response Body: \n{}", prettyPrintJson (this.response.text ()));
21+
String responseBody = this.response.text ();
22+
if (StringUtils.isNotBlank (responseBody)) {
23+
this.log.info ("Logging Response Details....\n responseHeaders: {}, \nstatusCode: {}, \nresponseBody: {}",
24+
this.response.headers (), this.response.status (), prettyPrintJson (this.response.text ()));
2825
}
2926
this.log.info ("End of Logs!");
3027
}
3128

3229
private String prettyPrintJson (final String text) {
33-
String prettyPrintJson = "";
34-
if (text != null && !text.isBlank() && !text.isEmpty()) {
35-
try {
36-
37-
final ObjectMapper objectMapper = new ObjectMapper ();
38-
final Object jsonObject = objectMapper.readValue (text, Object.class);
39-
prettyPrintJson = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonObject);
40-
return prettyPrintJson;
41-
} catch (final JsonProcessingException e) {
42-
this.log.error ("Error Printing Pretty Json : {}", e.getMessage ());
43-
}
30+
try {
31+
final ObjectMapper objectMapper = new ObjectMapper ();
32+
final Object jsonObject = objectMapper.readValue (text, Object.class);
33+
return objectMapper.writerWithDefaultPrettyPrinter ()
34+
.writeValueAsString (jsonObject);
35+
} catch (final JsonProcessingException e) {
36+
this.log.error ("Failed to pretty print JSON: {}", e.getMessage (), e);
37+
return text;
4438
}
45-
this.log.info ("No response body generated!");
46-
return null;
4739
}
40+
41+
// private String prettyPrintJson (final String text) {
42+
// String prettyPrintJson = "";
43+
// if (text != null && !text.isBlank() && !text.isEmpty()) {
44+
// try {
45+
//
46+
// final ObjectMapper objectMapper = new ObjectMapper ();
47+
// final Object jsonObject = objectMapper.readValue (text, Object.class);
48+
// prettyPrintJson = objectMapper.writerWithDefaultPrettyPrinter().writeValueAsString(jsonObject);
49+
// return prettyPrintJson;
50+
// } catch (final JsonProcessingException e) {
51+
// this.log.error ("Error Printing Pretty Json : {}", e.getMessage ());
52+
// }
53+
// }
54+
// this.log.info ("No response body generated!");
55+
// return null;
56+
// }
4857
}

0 commit comments

Comments
 (0)