Apply review suggestions

Remove the null check, which the contains() check before it makes
unreachable, reword the test comments and test a JSON object where a
String or an Integer is expected.

Signed-off-by: Sharang Gupta <sharang@sharanggupta.dev>
diff --git a/src/main/java/org/eclipse/yasson/internal/deserializer/PositionChecker.java b/src/main/java/org/eclipse/yasson/internal/deserializer/PositionChecker.java
index 4f4b28e..2b6f6e9 100644
--- a/src/main/java/org/eclipse/yasson/internal/deserializer/PositionChecker.java
+++ b/src/main/java/org/eclipse/yasson/internal/deserializer/PositionChecker.java
@@ -76,7 +76,7 @@
         Event original = value.currentEvent();
         Event startEvent = original;
         if (!expectedEvents.contains(startEvent)) {
-            if (original == null || !CLOSING_EVENTS.containsKey(original)) {
+            if (!CLOSING_EVENTS.containsKey(original)) {
                 startEvent = value.next();
             }
             if (!expectedEvents.contains(startEvent)) {
diff --git a/src/test/java/org/eclipse/yasson/defaultmapping/specific/UnmarshallingUnsupportedTypesTest.java b/src/test/java/org/eclipse/yasson/defaultmapping/specific/UnmarshallingUnsupportedTypesTest.java
index dcc87cc..40ecb6d 100644
--- a/src/test/java/org/eclipse/yasson/defaultmapping/specific/UnmarshallingUnsupportedTypesTest.java
+++ b/src/test/java/org/eclipse/yasson/defaultmapping/specific/UnmarshallingUnsupportedTypesTest.java
@@ -128,18 +128,32 @@
 
     @Test
     public void testIntegerAsArray() {
-        //wrong, integerValue is a value.
+        // wrong: 'integerValue' field is an Integer, not an array
         String json  = "{\"nestedPojo\":{\"integerValue\":[10,11]},\"optionalLong\":11}";
         assertFail(json, SupportedTypes.class, "integerValue", Integer.class);
     }
 
     @Test
     public void testStringAsArray() {
-        //wrong, value is a value.
+        // wrong: 'value' field is a String, not an array
         String json  = "{\"value\":[\"data1\",\"data2\"]}";
         assertFail(json, new TestTypeToken<ScalarValueWrapper<String>>() { }.getType(), "value", String.class);
     }
 
+    @Test
+    public void testStringAsObject() {
+        // wrong: 'value' field is a String, not an object.
+        String json  = "{\"value\":{\"nested\":\"data\"}}";
+        assertFail(json, new TestTypeToken<ScalarValueWrapper<String>>() { }.getType(), "value", String.class);
+    }
+
+    @Test
+    public void testIntegerAsObject() {
+        // wrong: 'integerValue' field is an Integer, not an object.
+        String json  = "{\"nestedPojo\":{\"integerValue\":{\"nested\":10}},\"optionalLong\":11}";
+        assertFail(json, SupportedTypes.class, "integerValue", Integer.class);
+    }
+
     @Test()
     public void testMissingFieldDefault() {
         String json  = "{\"nestedPojo\":{\"integerValue\":10,\"missingField\":5},\"optionalLong\":11}";