private JsonObject createJsonObject() { JsonObject obj = new JsonObject(); obj.put("mystr", "bar"); obj.put("myint", Integer.MAX_VALUE); obj.put("mylong", Long.MAX_VALUE); obj.put("myfloat", Float.MAX_VALUE); obj.put("mydouble", Double.MAX_VALUE); obj.put("myboolean", true); obj.put("mybinary", randomByteArray(100)); return obj; }
@Test void testContainsKey() { JsonObject jsonObject = new JsonObject(); jsonObject.put("foo", "bar"); assertTrue(jsonObject.containsKey("foo")); jsonObject.putNull("foo"); assertTrue(jsonObject.containsKey("foo")); assertFalse(jsonObject.containsKey("absent")); }
/** * Prepares the JSON payload that carries on the token value. */ protected JsonResult tokenAsJson(final T authToken) { final JsonObject jsonObject = new JsonObject(); jsonObject.put("token", userAuth.tokenValue(authToken)); return JsonResult.of(jsonObject); }
@Test void testSize() { JsonObject jsonObject = new JsonObject(); assertEquals(0, jsonObject.size()); jsonObject.put("foo", "bar"); assertEquals(1, jsonObject.size()); jsonObject.put("bar", 123); assertEquals(2, jsonObject.size()); jsonObject.putNull("wibble"); assertEquals(3, jsonObject.size()); jsonObject.remove("wibble"); assertEquals(2, jsonObject.size()); jsonObject.clear(); assertEquals(0, jsonObject.size()); }
private void assertNumberNotEquals(Number value1, Number value2) { JsonObject o1 = new JsonObject().put("key", value1); JsonObject o2 = new JsonObject().put("key", value2); if (o1.equals(o2)) { fail("Was expecting " + value1.getClass().getSimpleName() + ":" + value1 + " != " + value2.getClass().getSimpleName() + ":" + value2); } }
private void assertNumberEquals(Number value1, Number value2) { JsonObject o1 = new JsonObject().put("key", value1); JsonObject o2 = new JsonObject().put("key", value2); if (!o1.equals(o2)) { fail("Was expecting " + value1.getClass().getSimpleName() + ":" + value1 + " == " + value2.getClass().getSimpleName() + ":" + value2); } JsonArray a1 = new JsonArray().add(value1); JsonArray a2 = new JsonArray().add(value2); if (!a1.equals(a2)) { fail("Was expecting " + value1.getClass().getSimpleName() + ":" + value1 + " == " + value2.getClass().getSimpleName() + ":" + value2); } }
@Test void testFieldNames() { JsonObject jsonObject = new JsonObject(); jsonObject.put("foo", "bar"); jsonObject.put("eek", 123); jsonObject.put("flib", new JsonObject()); Set<String> fieldNames = jsonObject.fieldNames(); assertEquals(3, fieldNames.size()); assertTrue(fieldNames.contains("foo")); assertTrue(fieldNames.contains("eek")); assertTrue(fieldNames.contains("flib")); jsonObject.remove("foo"); assertEquals(2, fieldNames.size()); assertFalse(fieldNames.contains("foo")); }
@Test void testJsonObjectEquality2() { JsonObject obj1 = new JsonObject().put("arr", new JsonArray().add("x")); List<Object> list = new ArrayList<>(); list.add("x"); Map<String, Object> map = new HashMap<>(); map.put("arr", list); JsonObject obj2 = new JsonObject(map); Iterator<Map.Entry<String, Object>> iter = obj2.iterator(); // There was a bug where iteration of entries caused the underlying object to change resulting in a // subsequent equals changing while (iter.hasNext()) { Map.Entry<String, Object> entry = iter.next(); } assertEquals(obj2, obj1); }
@Test void testCreateFromMapNestedJsonObject() { Map<String, Object> map = new HashMap<>(); JsonObject nestedObj = new JsonObject().put("foo", "bar"); map.put("nested", nestedObj); JsonObject obj = new JsonObject(map); JsonObject nestedRetrieved = obj.getJsonObject("nested"); assertEquals("bar", nestedRetrieved.getString("foo")); }
@Test void testCreateFromListNestedJsonObject() { List<Object> list = new ArrayList<>(); list.add("foo"); list.add(123); JsonObject obj = new JsonObject().put("blah", "wibble"); list.add(obj); JsonArray arr = new JsonArray(list); assertEquals("foo", arr.getString(0)); assertEquals(Integer.valueOf(123), arr.getInteger(1)); assertSame(list, arr.list()); assertSame(obj, arr.getJsonObject(2)); }
@Test void testPutEnum() { JsonObject jsonObject = new JsonObject(); assertSame(jsonObject, jsonObject.put("foo", SomeEnum.FOO)); assertEquals(SomeEnum.FOO.toString(), jsonObject.getString("foo")); assertTrue(jsonObject.containsKey("foo")); try { jsonObject.put(null, SomeEnum.FOO); fail("error"); } catch (NullPointerException e) { // OK } }
@Test void testGetList() { JsonObject obj = new JsonObject().put("quux", "wibble"); jsonArray.add("foo").add(123).add(obj); List<Object> list = jsonArray.list(); list.remove("foo"); assertFalse(jsonArray.contains("foo")); list.add("floob"); assertTrue(jsonArray.contains("floob")); assertSame(obj, list.get(1)); obj.remove("quux"); }
@Test void testClear() { JsonObject jsonObject = new JsonObject(); jsonObject.put("foo", "bar"); jsonObject.put("quux", 123); assertEquals(2, jsonObject.size()); jsonObject.clear(); assertEquals(0, jsonObject.size()); assertNull(jsonObject.getValue("foo")); assertNull(jsonObject.getValue("quux")); }
@Test void testAddJsonObject() { JsonObject obj = new JsonObject().put("foo", "bar"); assertSame(jsonArray, jsonArray.add(obj)); assertEquals(obj, jsonArray.getJsonObject(0)); }
@Test void testRemove() { JsonObject jsonObject = new JsonObject(); jsonObject.put("mystr", "bar"); jsonObject.put("myint", 123); assertEquals("bar", jsonObject.remove("mystr")); assertNull(jsonObject.getValue("mystr")); assertEquals(123, jsonObject.remove("myint")); assertNull(jsonObject.getValue("myint")); assertTrue(jsonObject.isEmpty()); }
@Test void testMergeIn2() { JsonObject obj1 = new JsonObject().put("foo", "bar"); JsonObject obj2 = new JsonObject().put("foo", "flurb"); obj1.mergeIn(obj2); assertEquals(1, obj1.size()); assertEquals("flurb", obj1.getString("foo")); assertEquals(1, obj2.size()); assertEquals("flurb", obj2.getString("foo")); }
@Test void testToString() { JsonObject jsonObject = new JsonObject(); jsonObject.put("foo", "bar"); assertEquals(JsonSerializer.create().serialize(jsonObject), jsonObject.toString()); }
@Test void testMergeIn1() { JsonObject jsonObject = new JsonObject(); JsonObject obj1 = new JsonObject().put("foo", "bar"); JsonObject obj2 = new JsonObject().put("eek", "flurb"); obj1.mergeIn(obj2); assertEquals(2, obj1.size()); assertEquals("bar", obj1.getString("foo")); assertEquals("flurb", obj1.getString("eek")); assertEquals(1, obj2.size()); assertEquals("flurb", obj2.getString("eek")); }
@Test void testRemoveMethodReturnedObject() { JsonArray obj = new JsonArray(); obj.add("bar") .add(new JsonObject().put("name", "vert.x").put("count", 2)) .add(new JsonArray().add(1.0).add(2.0)); Object removed = obj.remove(0); assertTrue(removed instanceof String); removed = obj.remove(0); assertTrue(removed instanceof JsonObject); assertEquals(((JsonObject) removed).getString("name"), "vert.x"); removed = obj.remove(0); assertTrue(removed instanceof JsonArray); assertEquals(((JsonArray) removed).getDouble(0), 1.0, 0.1); }