From f40ac23e882ac4cce830b38a027c4cb255c3a8a0 Mon Sep 17 00:00:00 2001 From: Jesse Wilson Date: Sat, 11 Feb 2012 20:16:05 +0000 Subject: [PATCH] Write a test recommended by missing code coverage on TypeAdapter --- .../functional/StreamingTypeAdaptersTest.java | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) diff --git a/gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java b/gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java index e01e1077..551ceffc 100644 --- a/gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java +++ b/gson/src/test/java/com/google/gson/functional/StreamingTypeAdaptersTest.java @@ -18,6 +18,9 @@ package com.google.gson.functional; import com.google.gson.Gson; import com.google.gson.GsonBuilder; +import com.google.gson.JsonArray; +import com.google.gson.JsonObject; +import com.google.gson.JsonPrimitive; import com.google.gson.JsonSyntaxException; import com.google.gson.TypeAdapter; import com.google.gson.reflect.TypeToken; @@ -193,6 +196,21 @@ public final class StreamingTypeAdaptersTest extends TestCase { + "'right':{'label':'right','left':null,'right':null}}", toJson(nodeAdapter, root).replace('"', '\'')); } + + public void testFromJsonTree() { + JsonObject truckObject = new JsonObject(); + truckObject.add("horsePower", new JsonPrimitive(300)); + JsonArray passengersArray = new JsonArray(); + JsonObject jesseObject = new JsonObject(); + jesseObject.add("age", new JsonPrimitive(30)); + jesseObject.add("name", new JsonPrimitive("Jesse")); + passengersArray.add(jesseObject); + truckObject.add("passengers", passengersArray); + + Truck truck = truckAdapter.fromJsonTree(truckObject); + assertEquals(300.0, truck.horsePower); + assertEquals(Arrays.asList(new Person("Jesse", 30)), truck.passengers); + } static class Truck { double horsePower;