У меня есть список Целых (текущая) и я хочу, чтобы проверить этот список содержит ли все элементы из списка ожидаемого и даже не один элемент из списка notExpected, поэтому код выглядит следующим образом:Неправомерного Hamcrest hasItems
List<Integer> expected= new ArrayList<Integer>();
expected.add(1);
expected.add(2);
List<Integer> notExpected = new ArrayList<Integer>();
notExpected.add(3);
notExpected.add(4);
List<Integer> current = new ArrayList<Integer>();
current.add(1);
current.add(2);
assertThat(current, not(hasItems(notExpected.toArray(new Integer[expected.size()]))));
assertThat(current, (hasItems(expected.toArray(new Integer[expected.size()]))));
Так долго так хорошо. Но когда я добавляю
current.add(3);
тест также зеленый. Использую ли я неправильный помощник? КПП.
for (Integer i : notExpected)
assertThat(current, not(hasItem(i)));
дает мне правильный ответ, но я подумал, что просто могу легко использовать для этого совпадение hamcrest. Я использую JUnit 4.11 и Hamcrest 1.3