我正在使用“http am.com/au/v/so?sort=name”从 Get 调用中按排序顺序获取响应。它按排序顺序获取结果。如何断言列表中的名称按字母顺序排列。
List<String> list = new ArrayList<String>();
for (Aml aml : value.getResults()) {
name = aml.getName());
我正在使用“http am.com/au/v/so?sort=name”从 Get 调用中按排序顺序获取响应。它按排序顺序获取结果。如何断言列表中的名称按字母顺序排列。
List<String> list = new ArrayList<String>();
for (Aml aml : value.getResults()) {
name = aml.getName());
一个天真的但有效的解决方案:
List<String> received = insert_code_for_get_call_here();
List<String> sorted = received.stream().sorted().collect(Collectors.toList());
assertEquals(sorted, received);
这是做什么的?它接受接收到的值,再次对它们进行排序,然后检查结果列表是否等于原始列表。如果原始列表已经排序,这应该是正确的。如果收到的列表没有排序,它们会有所不同。
你可以使用这样的东西
String prev = "";
for(Ami ami : value.getResults())
{
String currentName = ami.getName();
if(prev.compareTo(currentName) > 0)
{
return false;
}
prev = currentName;
}
return true;