Apply suggestions from code review

Co-authored-by: Kyle Aure <KyleJAure@gmail.com>
Signed-off-by: James R. Perkins <jperkins@ibm.com>
diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/generics/GenericsTest.java b/src/test/java/org/eclipse/yasson/defaultmapping/generics/GenericsTest.java
index a8a4a92..907eb05 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/generics/GenericsTest.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/generics/GenericsTest.java
@@ -14,6 +14,7 @@
 
 import static org.eclipse.yasson.Jsonbs.defaultJsonb;
 import static org.junit.jupiter.api.Assertions.assertEquals;
+import static org.junit.jupiter.api.Assertions.assertIterableEquals;
 import static org.junit.jupiter.api.Assertions.assertThrows;
 import static org.junit.jupiter.api.Assertions.assertTrue;
 
@@ -527,6 +528,8 @@
         // Use a new instance of Jsonb to avoid any caching
         try (var jsonb = JsonbBuilder.create()) {
             assertEquals(expectedJson, jsonb.toJson(container));
+            TreeContainer<TreeElement> result = jsonb.fromJson(expectedJson, new TestTypeToken<TreeContainer<TreeElement>>() {}.getType());
+            assertIterableEquals(container.getTree().getChildren(), result.getTree().getChildren());
         }
 
     }
@@ -542,6 +545,8 @@
         // Use a new instance of Jsonb to avoid any caching
         try (var jsonb = JsonbBuilder.create()) {
             assertEquals(expectedJson, jsonb.toJson(container));
+            ListContainer<TreeElement> result = jsonb.fromJson(expectedJson, new TestTypeToken<ListContainer<TreeElement>>() {}.getType());
+            assertIterableEquals(container.getList(), result.getList());
         }
 
     }
diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeElement.java b/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeElement.java
index 36a7f71..a8dd238 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeElement.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeElement.java
@@ -17,7 +17,10 @@
  */
 public class TreeElement extends TreeTypeContainer<TreeElement> {
 
-    private final String name;
+    private String name;

+

+    public TreeElement() {

+    }

 
     public TreeElement(final String name) {
         this.name = name;
@@ -26,4 +29,25 @@
     public String getName() {
         return name;
     }
-}
+

+    public void setName(final String name) {

+        this.name = name;

+    }

+

+    @Override

+    public boolean equals(Object o) {

+        if (this == o) {

+            return true;

+        }

+        if (o == null || getClass() != o.getClass()) {

+            return false;

+        }

+        

+        if (!super.equals(o)) {

+            return false;

+        }

+        

+        TreeElement that = (TreeElement) o;

+        return name != null ? name.equals(that.name) : that.name == null;

+    }

+}

diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeTypeContainer.java b/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeTypeContainer.java
index 824a5e5..f649f7c 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeTypeContainer.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/generics/model/TreeTypeContainer.java
@@ -27,4 +27,21 @@
     public void setChildren(final List<T> children) {
         this.children = children;
     }
-}
+

+    @Override

+    public boolean equals(Object o) {

+        if (this == o) {

+            return true;

+        }

+        if (o == null || getClass() != o.getClass()) {

+            return false;

+        }

+        

+        TreeTypeContainer<?> that = (TreeTypeContainer<?>) o;

+        if (children == null) {

+            return that.children == null;

+        }

+        

+        return children.containsAll(that.children) && that.children.containsAll(children); 

+    }

+}