remove JSONNull

This commit is contained in:
Looly
2022-06-07 11:55:28 +08:00
parent f985887406
commit c914574c30
16 changed files with 157 additions and 202 deletions

View File

@@ -166,7 +166,7 @@ public class JSONArrayTest {
@Test
public void toListWithNullTest() {
final String json = "[null,{'akey':'avalue','bkey':'bvalue'}]";
final JSONArray ja = JSONUtil.parseArray(json);
final JSONArray ja = JSONUtil.parseArray(json, JSONConfig.of().setIgnoreNullValue(false));
final List<KeyBean> list = ja.toList(KeyBean.class);
Assert.assertNull(list.get(0));
@@ -218,8 +218,13 @@ public class JSONArrayTest {
@Test
public void putToIndexTest(){
final JSONArray jsonArray = new JSONArray();
jsonArray.put(3, "test");
JSONArray jsonArray = new JSONArray();
jsonArray.set(3, "test");
// 默认忽略null值因此空位无值只有一个值
Assert.assertEquals(1, jsonArray.size());
jsonArray = new JSONArray(JSONConfig.of().setIgnoreNullValue(false));
jsonArray.set(3, "test");
// 第三个位置插入值0~2都是null
Assert.assertEquals(4, jsonArray.size());
}

View File

@@ -12,9 +12,9 @@ public class JSONNullTest {
" \"device_status_date\": null,\n" +
" \"imsi\": null,\n" +
" \"act_date\": \"2021-07-23T06:23:26.000+00:00\"}");
Assert.assertEquals(JSONNull.class, bodyjson.get("device_model").getClass());
Assert.assertEquals(JSONNull.class, bodyjson.get("device_status_date").getClass());
Assert.assertEquals(JSONNull.class, bodyjson.get("imsi").getClass());
Assert.assertNull(bodyjson.get("device_model"));
Assert.assertNull(bodyjson.get("device_status_date"));
Assert.assertNull(bodyjson.get("imsi"));
bodyjson.getConfig().setIgnoreNullValue(true);
Assert.assertEquals("{\"act_date\":\"2021-07-23T06:23:26.000+00:00\"}", bodyjson.toString());
@@ -31,4 +31,26 @@ public class JSONNullTest {
Assert.assertFalse(bodyjson.containsKey("device_status_date"));
Assert.assertFalse(bodyjson.containsKey("imsi"));
}
@Test
public void setNullTest(){
// 忽略null
String json1 = JSONUtil.createObj().set("key1", null).toString();
Assert.assertEquals("{}", json1);
// 不忽略null
json1 = JSONUtil.createObj(JSONConfig.of().setIgnoreNullValue(false)).set("key1", null).toString();
Assert.assertEquals("{\"key1\":null}", json1);
}
@Test
public void setNullOfJSONArrayTest(){
// 忽略null
String json1 = JSONUtil.createArray().set(null).toString();
Assert.assertEquals("[]", json1);
// 不忽略null
json1 = JSONUtil.createArray(JSONConfig.of().setIgnoreNullValue(false)).set(null).toString();
Assert.assertEquals("[null]", json1);
}
}

View File

@@ -116,7 +116,7 @@ public class JSONObjectTest {
Assert.assertEquals(jsonObject.get("d"), true);
Assert.assertTrue(jsonObject.containsKey("e"));
Assert.assertEquals(jsonObject.get("e"), JSONNull.NULL);
Assert.assertNull(jsonObject.get("e"));
}
@Test
@@ -460,7 +460,7 @@ public class JSONObjectTest {
json.append("date", DateUtil.parse("2020-06-05 11:16:11"));
json.append("bbb", "222");
json.append("aaa", "123");
Assert.assertEquals("{\"date\":[\"2020-06-05 11:16:11\"],\"bbb\":[\"222\"],\"aaa\":[\"123\"]}", json.toString());
Assert.assertEquals("{\"date\":\"2020-06-05 11:16:11\",\"bbb\":\"222\",\"aaa\":\"123\"}", json.toString());
}
@Test
@@ -612,14 +612,14 @@ public class JSONObjectTest {
}
@Test
public void accumulateTest() {
final JSONObject jsonObject = JSONUtil.createObj().accumulate("key1", "value1");
public void appendTest() {
final JSONObject jsonObject = JSONUtil.createObj().append("key1", "value1");
Assert.assertEquals("{\"key1\":\"value1\"}", jsonObject.toString());
jsonObject.accumulate("key1", "value2");
jsonObject.append("key1", "value2");
Assert.assertEquals("{\"key1\":[\"value1\",\"value2\"]}", jsonObject.toString());
jsonObject.accumulate("key1", "value3");
jsonObject.append("key1", "value3");
Assert.assertEquals("{\"key1\":[\"value1\",\"value2\",\"value3\"]}", jsonObject.toString());
}