package org.test4j.json.helper; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import org.test4j.testng.Test4J; import org.testng.annotations.Test; @SuppressWarnings("rawtypes") @Test(groups = { "test4j", "json" }) public class InnerJSONMapTest extends Test4J { @Test(description = "验证JSONMap数据的有序性,JSONMap必须是LinkedHashMap而不能是HashMap") public void testLinkedHashMap() { JSONMap map = new JSONMap(); map.putJSON("a3", "aa"); map.putJSON("a2", "bb"); map.putJSON("b1", "cc"); StringBuffer buff = new StringBuffer(); for (Iterator<JSONObject> iterator = map.values().iterator(); iterator.hasNext();) { JSONSingle single = (JSONSingle) iterator.next(); buff.append(single.toStringValue()); } String result = buff.toString(); want.string(result).isEqualTo("aabbcc"); } public void testHashMap() { Map<String, String> map = new HashMap<String, String>(); map.put("a3", "aa"); map.put("a2", "bb"); map.put("b1", "cc"); StringBuffer buff = new StringBuffer(); for (Iterator iterator = map.values().iterator(); iterator.hasNext();) { String name = (String) iterator.next(); buff.append(name); } want.string(buff.toString()).notEqualTo("aabbcc"); } }