From 9b9e94c81a092a071b4f4f8dc2c03a51c8ce5226 Mon Sep 17 00:00:00 2001 From: maryo42 Date: Thu, 28 Mar 2019 14:13:11 +0100 Subject: [PATCH] Exists method for check if Any object is empty --- src/main/java/com/jsoniter/any/Any.java | 4 ++++ .../java/com/jsoniter/any/TestNotFoundAny.java | 16 ++++++++++++++++ 2 files changed, 20 insertions(+) create mode 100644 src/test/java/com/jsoniter/any/TestNotFoundAny.java diff --git a/src/main/java/com/jsoniter/any/Any.java b/src/main/java/com/jsoniter/any/Any.java index 8159f1c2..506a29e8 100644 --- a/src/main/java/com/jsoniter/any/Any.java +++ b/src/main/java/com/jsoniter/any/Any.java @@ -202,6 +202,10 @@ public Any mustBeValid() { } } + public boolean exists() { + return !(this instanceof NotFoundAny); + } + public Set keys() { return EMPTY_KEYS; } diff --git a/src/test/java/com/jsoniter/any/TestNotFoundAny.java b/src/test/java/com/jsoniter/any/TestNotFoundAny.java new file mode 100644 index 00000000..b4ed7516 --- /dev/null +++ b/src/test/java/com/jsoniter/any/TestNotFoundAny.java @@ -0,0 +1,16 @@ +package com.jsoniter.any; + +import com.jsoniter.JsonIterator; +import junit.framework.TestCase; + +public class TestNotFoundAny extends TestCase { + + public void test_exists() { + Any any = JsonIterator.deserialize("{\"field\": \"ABC\"}"); + Any field = any.get("field"); + Any otherField = any.get("otherField"); + assertTrue(field.exists()); + assertFalse(otherField.exists()); + } + +}