У меня следующая проблема с Hamcrest: у меня есть список сотрудников
List<Employee> employees = hamcrest.getEmployees();
куда:
public class Employee {
private String name;
private int age;
private double salary;
public Employee(String name, int age, double salary) {
super();
this.name = name;
this.age = age;
this.salary = salary;
}
и:
public List<Employee> getEmployees() {
Employee e1 = new Employee("Adam", 39, 18000);
Employee e2 = new Employee("Jola", 26, 8000);
Employee e3 = new Employee("Kamil", 64, 7700);
Employee e4 = new Employee("Mateusz", 27, 37000);
Employee e5 = new Employee("Joanna", 31, 12700);
Employee e6 = null;
return Arrays.asList(e1, e2, e3, e4, e5, e6);
}
Я хотел бы проверить, есть ли в моем списке объект с именем = Mateusz. Я пробовал таким образом, но что-то пошло не так:
@Test
public void testListOfObjectsContains() {
List<Employee> employees = hamcrest.getEmployees();
assertThat(employees, Matchers.anyOf(Matchers.containsInAnyOrder(Matchers.hasProperty("name", is("Mateusz")), Matchers.hasProperty("age", is(27)))));
}
Как я могу проверить это с помощью Hamcrest? Я потратил более 2 часов, чтобы найти решение в Интернете, но, к сожалению, безуспешно.
Заранее большое спасибо!