未验证 提交 433398d5 编写于 作者: 温绍锦 提交者: GitHub

Merge pull request #3570 from MengdiGao/fix-test-Issue3082

Fix 3 flaky tests caused by Map ordering assumption
......@@ -16,6 +16,6 @@ public class HashMultimapTest extends TestCase {
map.put("name", "b");
String json = JSON.toJSONString(map);
assertEquals("{\"name\":[\"a\",\"b\"]}", json);
assertTrue(json.equals("{\"name\":[\"a\",\"b\"]}") || json.equals("{\"name\":[\"b\",\"a\"]}"));
}
}
......@@ -20,8 +20,14 @@ public class Issue1584 extends TestCase {
{
Map.Entry entry = JSON.parseObject(json, Map.Entry.class, config);
assertEquals("v", entry.getKey());
assertEquals("A", entry.getValue());
Object key = entry.getKey();
Object value = entry.getValue();
assertTrue(key.equals("v") || key.equals("k"));
if (key.equals("v")) {
assertEquals("A", value);
} else {
assertEquals(1, value);
}
}
config.putDeserializer(Map.Entry.class, new ObjectDeserializer() {
......
......@@ -2,6 +2,7 @@ package com.alibaba.json.bvt.issue_3000;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.TypeReference;
import com.alibaba.fastjson.serializer.SerializerFeature;
import junit.framework.TestCase;
import java.lang.reflect.Type;
......@@ -26,6 +27,6 @@ public class Issue3082 extends TestCase {
HashSet<Map.Entry<String, Map.Entry<String, String>>> deserializedNestedSet;
Type type = new TypeReference<HashSet<Map.Entry<String, Map.Entry<String, String>>>>() {}.getType();
deserializedNestedSet = JSON.parseObject(content, type);
assertEquals("b", deserializedNestedSet.iterator().next().getValue().getKey());
assertEquals(nestedSet, deserializedNestedSet);
}
}
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册