diff options
Diffstat (limited to 'test/data/ValidatingJsonDeserializerTest.java')
-rw-r--r-- | test/data/ValidatingJsonDeserializerTest.java | 28 |
1 files changed, 27 insertions, 1 deletions
diff --git a/test/data/ValidatingJsonDeserializerTest.java b/test/data/ValidatingJsonDeserializerTest.java index 85f1661..b51631a 100644 --- a/test/data/ValidatingJsonDeserializerTest.java +++ b/test/data/ValidatingJsonDeserializerTest.java @@ -362,7 +362,7 @@ public class ValidatingJsonDeserializerTest { tweet.addProperty("created_at", "X"); tweet.addProperty("favorite_count", 4); tweet.add("place", JsonNull.INSTANCE); - tweet.addProperty("coordinates", "X"); + tweet.add("coordinates", JsonNull.INSTANCE); tweet.addProperty("text", "X"); tweet.add("retweeted_status", JsonNull.INSTANCE); // Tweet object JsonObject entities = new JsonObject(); @@ -469,6 +469,32 @@ public class ValidatingJsonDeserializerTest { } @Test + public void testTweetCoordinates() { + JsonObject tweet = buildMinimalTweet(buildMinimalUser()); + addProperty(tweet, new JsonPrimitive("X"), "coordinates"); + checkTweetFail(tweet, "Expected object: coordinates"); + + JsonObject coords = new JsonObject(); + // overwrite coordinates with object + addProperty(tweet, coords, "coordinates"); + checkTweetFail(tweet, "Missing field: coordinates.coordinates"); + + // set coordinates.coordinates + JsonArray coordsFloat = new JsonArray(); + coords.add("coordinates", coordsFloat); + checkTweetFail(tweet, "Array smaller than 2: coordinates.coordinates"); + + coordsFloat.add(new JsonPrimitive(1.0f)); + checkTweetFail(tweet, "Array smaller than 2: coordinates.coordinates"); + + coordsFloat.add(new JsonPrimitive(1.0f)); + checkTweetPass(tweet); + + coordsFloat.add(new JsonPrimitive(1.0f)); + checkTweetFail(tweet, "Array larger than 2: coordinates.coordinates"); + } + + @Test public void testTweetEntities() { checkImpairedTweet("entities"); checkImpairedTweet("entities", "hashtags"); |