【发布时间】:2016-03-22 16:11:43
【问题描述】:
我将使用 asserThat 来验证 ArrayList 中对象的属性。
如果没有一个对象包含要测试的数据,我可以使用 assertThat,但如果只有一个对象包含要测试的数据,我不知道如何使用 assertThat。
示例代码:
public class dataNeeded {
String data;
String modifiedDate;
public String getData(){
return data;
}
......
}
public ArrayList<dataNeeded> returnsNeededData(){
...
}
List<dataNeeded> dataToBeTested = returnsNeededData();
dataToBeTested.forEach(data->assertThat(data.getData(), not(equalTo("No"))));
List<dataNeeded> dataToBeTested2 = returnsNeededData();
// I need to verify if one of the objects in this list has it's data as "No"
dataToBeTested.forEach(data->assertThat(data.getData(), ???);
【问题讨论】:
-
可以调用列表中的.contains()方法吗?
-
.contains() 方法将检查列表中的对象,但不检查列表中对象的属性
标签: java unit-testing assert hamcrest assertthat