[JAVA-26735] Replaced deprecated API JsonParser

This commit is contained in:
panos-kakos 2023-11-03 23:52:59 +02:00
parent 0f6149ef8c
commit a324fc5c33
4 changed files with 20 additions and 27 deletions

View File

@ -4,6 +4,8 @@ import static org.junit.jupiter.api.Assertions.assertEquals;
import static org.junit.jupiter.api.Assertions.assertTrue; import static org.junit.jupiter.api.Assertions.assertTrue;
import com.google.gson.*; import com.google.gson.*;
import org.junit.Assert;
import org.junit.jupiter.api.Test; import org.junit.jupiter.api.Test;
public class JsonObjectConversionsUnitTest { public class JsonObjectConversionsUnitTest {

View File

@ -3,8 +3,9 @@ package com.baeldung.gson.deserialization.test;
import static org.hamcrest.Matchers.hasItem; import static org.hamcrest.Matchers.hasItem;
import static org.hamcrest.Matchers.instanceOf; import static org.hamcrest.Matchers.instanceOf;
import static org.hamcrest.Matchers.not; import static org.hamcrest.Matchers.not;
import static org.hamcrest.MatcherAssert.assertThat;
import static org.junit.Assert.assertEquals; import static org.junit.Assert.assertEquals;
import static org.junit.Assert.assertThat;
import java.lang.reflect.Type; import java.lang.reflect.Type;
import java.util.ArrayList; import java.util.ArrayList;
@ -68,7 +69,7 @@ public class GsonDeserializationUnitTest {
final GenericFoo<Integer> targetObject = new Gson().fromJson(json, typeToken); final GenericFoo<Integer> targetObject = new Gson().fromJson(json, typeToken);
assertEquals(targetObject.theValue, new Integer(1)); assertEquals(targetObject.theValue, Integer.valueOf(1));
} }
// tests - multiple elements // tests - multiple elements
@ -98,8 +99,7 @@ public class GsonDeserializationUnitTest {
@Test @Test
public void whenDeserializingJsonIntoElements_thenCorrect() { public void whenDeserializingJsonIntoElements_thenCorrect() {
final String jsonSourceObject = "{\"valueInt\":7,\"valueString\":\"seven\"}"; final String jsonSourceObject = "{\"valueInt\":7,\"valueString\":\"seven\"}";
final JsonParser jParser = new JsonParser(); final JsonElement jElement = JsonParser.parseString(jsonSourceObject);
final JsonElement jElement = jParser.parse(jsonSourceObject);
final JsonObject jObject = jElement.getAsJsonObject(); final JsonObject jObject = jElement.getAsJsonObject();
final int intValue = jObject.get("valueInt").getAsInt(); final int intValue = jObject.get("valueInt").getAsInt();
final String stringValue = jObject.get("valueString").getAsString(); final String stringValue = jObject.get("valueString").getAsString();

View File

@ -16,79 +16,71 @@ public class JsonCompareUnitTest {
@Test @Test
public void givenIdenticalSimpleObjects_whenCompared_thenEqual() { public void givenIdenticalSimpleObjects_whenCompared_thenEqual() {
JsonParser parser = new JsonParser();
String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27 }}"; String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27 }}";
String string2 = "{\"customer\": {\"id\": \"44521\", \"fullName\": \"Emily Jenkins\",\"age\": 27}}"; String string2 = "{\"customer\": {\"id\": \"44521\", \"fullName\": \"Emily Jenkins\",\"age\": 27}}";
assertTrue(parser.parse(string1) assertTrue(JsonParser.parseString(string1).isJsonObject());
.isJsonObject()); assertEquals(JsonParser.parseString(string1), JsonParser.parseString(string2));
assertEquals(parser.parse(string1), parser.parse(string2));
} }
@Test @Test
public void givenSameObjectsInDifferentOrder_whenCompared_thenEqual() { public void givenSameObjectsInDifferentOrder_whenCompared_thenEqual() {
JsonParser parser = new JsonParser();
String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27 }}"; String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27 }}";
String string2 = "{\"customer\": {\"id\": \"44521\",\"age\": 27, \"fullName\": \"Emily Jenkins\" }}"; String string2 = "{\"customer\": {\"id\": \"44521\",\"age\": 27, \"fullName\": \"Emily Jenkins\" }}";
JsonElement json1 = parser.parse(string1); JsonElement json1 = JsonParser.parseString(string1);
JsonElement json2 = parser.parse(string2); JsonElement json2 = JsonParser.parseString(string2);
assertEquals(json1, json2); assertEquals(json1, json2);
} }
@Test @Test
public void givenIdenticalArrays_whenCompared_thenEqual() { public void givenIdenticalArrays_whenCompared_thenEqual() {
JsonParser parser = new JsonParser();
String string1 = "[10, 20, 30]"; String string1 = "[10, 20, 30]";
String string2 = "[10, 20, 30]"; String string2 = "[10, 20, 30]";
assertTrue(parser.parse(string1) assertTrue(JsonParser.parseString(string1)
.isJsonArray()); .isJsonArray());
assertEquals(parser.parse(string1), parser.parse(string2)); assertEquals(JsonParser.parseString(string1), JsonParser.parseString(string2));
} }
@Test @Test
public void givenArraysInDifferentOrder_whenCompared_thenNotEqual() { public void givenArraysInDifferentOrder_whenCompared_thenNotEqual() {
JsonParser parser = new JsonParser();
String string1 = "[20, 10, 30]"; String string1 = "[20, 10, 30]";
String string2 = "[10, 20, 30]"; String string2 = "[10, 20, 30]";
assertNotEquals(parser.parse(string1), parser.parse(string2)); assertNotEquals(JsonParser.parseString(string1), JsonParser.parseString(string2));
} }
@Test @Test
public void givenIdenticalNestedObjects_whenCompared_thenEqual() { public void givenIdenticalNestedObjects_whenCompared_thenEqual() {
JsonParser parser = new JsonParser();
String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"fav_product\": \"Coke\", \"last_buy\": \"2012-04-23\"}}}"; String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"fav_product\": \"Coke\", \"last_buy\": \"2012-04-23\"}}}";
String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"fav_product\": \"Coke\"}}}"; String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"fav_product\": \"Coke\"}}}";
JsonElement json1 = parser.parse(string1); JsonElement json1 = JsonParser.parseString(string1);
JsonElement json2 = parser.parse(string2); JsonElement json2 = JsonParser.parseString(string2);
assertEquals(json1, json2); assertEquals(json1, json2);
} }
@Test @Test
public void givenIdenticalNestedObjectsWithArray_whenCompared_thenEqual() { public void givenIdenticalNestedObjectsWithArray_whenCompared_thenEqual() {
JsonParser parser = new JsonParser();
String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}"; String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}";
String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}"; String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}";
JsonElement json1 = parser.parse(string1); JsonElement json1 = JsonParser.parseString(string1);
JsonElement json2 = parser.parse(string2); JsonElement json2 = JsonParser.parseString(string2);
assertEquals(json1, json2); assertEquals(json1, json2);
} }
@Test @Test
public void givenNestedObjectsDifferentArrayOrder_whenCompared_thenNotEqual() { public void givenNestedObjectsDifferentArrayOrder_whenCompared_thenNotEqual() {
JsonParser parser = new JsonParser();
String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}"; String string1 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"banana\", \"eggs\"]}}}";
String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"eggs\", \"banana\"]}}}"; String string2 = "{\"customer\": {\"id\": \"44521\",\"fullName\": \"Emily Jenkins\", \"age\": 27, \"consumption_info\" : {\"last_buy\": \"2012-04-23\", \"prouducts\": [\"eggs\", \"banana\"]}}}";
JsonElement json1 = parser.parse(string1); JsonElement json1 = JsonParser.parseString(string1);
JsonElement json2 = parser.parse(string2); JsonElement json2 = JsonParser.parseString(string2);
assertNotEquals(json1, json2); assertNotEquals(json1, json2);
} }

View File

@ -41,8 +41,7 @@ public class GsonSerializeUnitTest {
.serializeNulls() .serializeNulls()
.disableHtmlEscaping() .disableHtmlEscaping()
.create() .create()
.toJson(new JsonParser() .toJson(JsonParser.parseString("{\"imdbId\":null,\"actors\":[{\"<strong>IMDB Code</strong>\":\"nm2199632\",\"<strong>Date Of Birth</strong>\":\"21-09-1982\",\"<strong>N° Film:</strong> \":3,\"filmography\":\"Apocalypto-Beatdown-Wind Walkers\"}]}"));
.parse("{\"imdbId\":null,\"actors\":[{\"<strong>IMDB Code</strong>\":\"nm2199632\",\"<strong>Date Of Birth</strong>\":\"21-09-1982\",\"<strong>N° Film:</strong> \":3,\"filmography\":\"Apocalypto-Beatdown-Wind Walkers\"}]}"));
Assert.assertEquals(gson.toJson(movieWithNullValue), expectedOutput); Assert.assertEquals(gson.toJson(movieWithNullValue), expectedOutput);
} }
} }