/src/test/java/com/alibaba/json/bvt/bug/Issue248_orderedField.java
https://github.com/alibaba/fastjson · Java · 81 lines · 60 code · 21 blank · 0 comment · 0 complexity · 9937639c57736ffc6627d599bf22ad6e MD5 · raw file
- package com.alibaba.json.bvt.bug;
- import junit.framework.TestCase;
- import org.junit.Assert;
- import com.alibaba.fastjson.JSON;
- import com.alibaba.fastjson.JSONObject;
- import com.alibaba.fastjson.parser.Feature;
- public class Issue248_orderedField extends TestCase {
- public void test_0() throws Exception {
- String text = "{\"b\":\"b\",\"d\":\"d\",\"c\":\"c\",\"a\":\"a\"}";
- JSONObject object = JSON.parseObject(text, Feature.OrderedField);
- System.out.println(object);
- Assert.assertEquals("b", object.keySet().toArray()[0]);
- Assert.assertEquals("d", object.keySet().toArray()[1]);
- Assert.assertEquals("c", object.keySet().toArray()[2]);
- Assert.assertEquals("a", object.keySet().toArray()[3]);
- }
- public void test_1() throws Exception {
- String text = "{\"a\":\"a\",\"b\":\"b\",\"c\":\"c\",\"d\":\"d\"}";
- System.out.println(JSON.parseObject(text));
- JSONObject object = JSON.parseObject(text, Feature.OrderedField);
- System.out.println(object);
- Assert.assertEquals("a", object.keySet().toArray()[0]);
- Assert.assertEquals("b", object.keySet().toArray()[1]);
- Assert.assertEquals("c", object.keySet().toArray()[2]);
- Assert.assertEquals("d", object.keySet().toArray()[3]);
- }
- public void test_2() throws Exception {
- String text = "{\"k1\":\"v1\",\"k3\":\"v3\",\"k2\":\"v2\",\"map\":{\"k1\":\"v1\",\"k3\":\"v3\",\"k2\":\"v2\",\"map\":{\"k1\":\"v1\",\"k3\":\"v3\",\"k2\":\"v2\"}}}";
- System.out.println(JSON.parseObject(text));
- JSONObject object = JSON.parseObject(text, Feature.OrderedField);
- System.out.println(object);
- Assert.assertEquals("k1", object.keySet().toArray()[0]);
- Assert.assertEquals("k3", object.keySet().toArray()[1]);
- Assert.assertEquals("k2", object.keySet().toArray()[2]);
- Assert.assertEquals("map", object.keySet().toArray()[3]);
- Assert.assertEquals("k1", object.getJSONObject("map").keySet().toArray()[0]);
- Assert.assertEquals("k3", object.getJSONObject("map").keySet().toArray()[1]);
- Assert.assertEquals("k2", object.getJSONObject("map").keySet().toArray()[2]);
- Assert.assertEquals("map", object.getJSONObject("map").keySet().toArray()[3]);
- Assert.assertEquals("k1", object.getJSONObject("map").getJSONObject("map").keySet().toArray()[0]);
- Assert.assertEquals("k3", object.getJSONObject("map").getJSONObject("map").keySet().toArray()[1]);
- Assert.assertEquals("k2", object.getJSONObject("map").getJSONObject("map").keySet().toArray()[2]);
- }
- public void test_3() throws Exception {
- String text = "{\"k1\":\"v1\",\"k3\":\"v3\",\"k2\":\"v2\",\"list\":[\"v1\",\"v3\",\"v2\",{\"map\":{\"k1\":\"v1\",\"k3\":\"v3\",\"k2\":\"v2\"}}]}";
- System.out.println(JSON.parseObject(text));
- JSONObject object = JSON.parseObject(text, Feature.OrderedField);
- System.out.println(object);
- Assert.assertEquals("k1", object.keySet().toArray()[0]);
- Assert.assertEquals("k3", object.keySet().toArray()[1]);
- Assert.assertEquals("k2", object.keySet().toArray()[2]);
- Assert.assertEquals("list", object.keySet().toArray()[3]);
- Assert.assertEquals("k1",
- object.getJSONArray("list").getJSONObject(3).getJSONObject("map").keySet().toArray()[0]);
- Assert.assertEquals("k3",
- object.getJSONArray("list").getJSONObject(3).getJSONObject("map").keySet().toArray()[1]);
- Assert.assertEquals("k2",
- object.getJSONArray("list").getJSONObject(3).getJSONObject("map").keySet().toArray()[2]);
- }
- }