/src/test/java/com/alibaba/json/bvt/JSONObjectTest.java
https://github.com/flydream/fastjson · Java · 190 lines · 149 code · 26 blank · 15 comment · 1 complexity · 1b0b7b499639a8b09223db64289f1966 MD5 · raw file
- /*
- * Copyright 1999-2101 Alibaba Group.
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
- package com.alibaba.json.bvt;
-
- import java.io.StringWriter;
- import java.math.BigDecimal;
- import java.util.Collections;
- import java.util.Date;
- import java.util.HashMap;
-
- import junit.framework.Assert;
- import junit.framework.TestCase;
-
- import com.alibaba.fastjson.JSONObject;
-
- public class JSONObjectTest extends TestCase {
-
- public void test_toJSONObject() throws Exception {
- {
- Assert.assertNull(JSONObject.parse(null));
- }
- }
-
- public void test_writeJSONString() throws Exception {
- {
- StringWriter out = new StringWriter();
- new JSONObject().writeJSONString(out);
- Assert.assertEquals("{}", out.toString());
- }
- }
-
- public void test_getLong() throws Exception {
- JSONObject json = new JSONObject(true);
- json.put("A", 55L);
- json.put("B", 55);
- json.put("K", true);
- Assert.assertEquals(json.getLong("A").longValue(), 55L);
- Assert.assertEquals(json.getLong("B").longValue(), 55L);
- Assert.assertEquals(json.getLong("C"), null);
- Assert.assertEquals(json.getBooleanValue("K"), true);
- Assert.assertEquals(json.getBoolean("K"), Boolean.TRUE);
- }
-
- public void test_getLong_1() throws Exception {
- JSONObject json = new JSONObject(false);
- json.put("A", 55L);
- json.put("B", 55);
- Assert.assertEquals(json.getLong("A").longValue(), 55L);
- Assert.assertEquals(json.getLong("B").longValue(), 55L);
- Assert.assertEquals(json.getLong("C"), null);
- }
-
- public void test_getDate() throws Exception {
- long currentTimeMillis = System.currentTimeMillis();
- JSONObject json = new JSONObject();
- json.put("A", new Date(currentTimeMillis));
- json.put("B", currentTimeMillis);
- Assert.assertEquals(json.getDate("A").getTime(), currentTimeMillis);
- Assert.assertEquals(json.getDate("B").getTime(), currentTimeMillis);
- Assert.assertEquals(json.getLong("C"), null);
- }
-
- public void test_getBoolean() throws Exception {
- JSONObject json = new JSONObject();
- json.put("A", true);
- Assert.assertEquals(json.getBoolean("A").booleanValue(), true);
- Assert.assertEquals(json.getLong("C"), null);
- }
-
- public void test_getInt() throws Exception {
- JSONObject json = new JSONObject();
- json.put("A", 55L);
- json.put("B", 55);
- Assert.assertEquals(json.getInteger("A").intValue(), 55);
- Assert.assertEquals(json.getInteger("B").intValue(), 55);
- Assert.assertEquals(json.getInteger("C"), null);
- }
-
- public void test_order() throws Exception {
- JSONObject json = new JSONObject(true);
- json.put("C", 55L);
- json.put("B", 55);
- json.put("A", 55);
- Assert.assertEquals("C", json.keySet().toArray()[0]);
- Assert.assertEquals("B", json.keySet().toArray()[1]);
- Assert.assertEquals("A", json.keySet().toArray()[2]);
-
- Assert.assertEquals(0, json.getIntValue("D"));
- Assert.assertEquals(0L, json.getLongValue("D"));
- Assert.assertEquals(false, json.getBooleanValue("D"));
- }
-
- public void test_all() throws Exception {
- JSONObject json = new JSONObject();
- Assert.assertEquals(true, json.isEmpty());
- json.put("C", 51L);
- json.put("B", 52);
- json.put("A", 53);
- Assert.assertEquals(false, json.isEmpty());
- Assert.assertEquals(true, json.containsKey("C"));
- Assert.assertEquals(false, json.containsKey("D"));
- Assert.assertEquals(true, json.containsValue(52));
- Assert.assertEquals(false, json.containsValue(33));
- Assert.assertEquals(null, json.remove("D"));
- Assert.assertEquals(51L, json.remove("C"));
- Assert.assertEquals(2, json.keySet().size());
- Assert.assertEquals(2, json.values().size());
- Assert.assertEquals(new BigDecimal("53"), json.getBigDecimal("A"));
-
- json.putAll(Collections.singletonMap("E", 99));
- Assert.assertEquals(3, json.values().size());
- json.clear();
- Assert.assertEquals(0, json.values().size());
- json.putAll(Collections.singletonMap("E", 99));
- Assert.assertEquals(99L, json.getLongValue("E"));
- Assert.assertEquals(99, json.getIntValue("E"));
- Assert.assertEquals("99", json.getString("E"));
- Assert.assertEquals(null, json.getString("F"));
- Assert.assertEquals(null, json.getDate("F"));
- Assert.assertEquals(null, json.getBoolean("F"));
- }
-
- public void test_all_2() throws Exception {
- JSONObject array = new JSONObject();
- array.put("0", 123);
- array.put("1", "222");
- array.put("2", 3);
- array.put("3", true);
- array.put("4", "true");
- array.put("5", "2.0");
-
- Assert.assertEquals(123, array.getIntValue("0"));
- Assert.assertEquals(123, array.getLongValue("0"));
- Assert.assertEquals(new BigDecimal("123"), array.getBigDecimal("0"));
-
- Assert.assertEquals(222, array.getIntValue("1"));
- Assert.assertEquals(3, array.getByte("2").byteValue());
- Assert.assertEquals(3, array.getByteValue("2"));
- Assert.assertEquals(3, array.getShort("2").shortValue());
- Assert.assertEquals(3, array.getShortValue("2"));
- Assert.assertEquals(new Integer(222), array.getInteger("1"));
- Assert.assertEquals(new Long(222), array.getLong("1"));
- Assert.assertEquals(new BigDecimal("222"), array.getBigDecimal("1"));
-
- Assert.assertEquals(true, array.getBooleanValue("4"));
- Assert.assertEquals(2.0F, array.getFloat("5").floatValue());
- Assert.assertEquals(2.0F, array.getFloatValue("5"));
- Assert.assertEquals(2.0D, array.getDouble("5").doubleValue());
- Assert.assertEquals(2.0D, array.getDoubleValue("5"));
- }
-
- public void test_getObject_null() throws Exception {
- JSONObject json = new JSONObject();
- json.put("obj", null);
-
- Assert.assertTrue(json.getJSONObject("obj") == null);
- }
-
- public void test_bytes () throws Exception {
- JSONObject object = new JSONObject();
- Assert.assertNull(object.getBytes("bytes"));
- }
-
- public void test_getObject() throws Exception {
- JSONObject json = new JSONObject();
- json.put("obj", new JSONObject());
-
- Assert.assertEquals(0, json.getJSONObject("obj").size());
- }
-
- public void test_getObject_map() throws Exception {
- JSONObject json = new JSONObject();
- json.put("obj", new HashMap());
-
- Assert.assertEquals(0, json.getJSONObject("obj").size());
- }
- }