在java中更好的方式Assert json数组键值是按asc还是desc顺序排序的?

时间:2018-05-30 08:43:17

标签: java json

我有一个json响应如下

"userDetails":[  
    { "userId" : 1,
      "userName" : "abc"
    },
    { "userId" : 2,
      "userName" : "bcd"
    }
]

我想编写java代码来断言" userDetails"数组按" userId"的升序/降序排序关键值。

1 个答案:

答案 0 :(得分:0)

使用JSONAssert: -

<dependency>
    <groupId>org.skyscreamer</groupId>
    <artifactId>jsonassert</artifactId>
    <version>1.5.0</version>
</dependency>

使用以下样本: -

String result = "[Alex, Barbera, Charlie, Xavier]";
JSONAssert.assertEquals(
"[Charlie, Alex, Xavier, Barbera]", result, JSONCompareMode.LENIENT);
JSONAssert.assertEquals(
"[Alex, Barbera, Charlie, Xavier]", result, JSONCompareMode.STRICT);
JSONAssert.assertNotEquals(
"[Charlie, Alex, Xavier, Barbera]", result, JSONCompareMode.STRICT);

在API返回已排序元素数组的场景中非常有用,我们想验证响应是否已排序。

参考: - http://www.baeldung.com/jsonassert