Скажем, у меня есть класс вроде этого:
public class Character {
public Character(String name){
this.name = name;
}
private String name;
public String getName() { return name; }
}
И позже карта
Map<Character, Integer> characterAges = new HashMap<Character, Integer>();
characterAges.put(new Character("Frodo"), 34);
Используя assertj, какой лучший способ проверить, что characterAges включает символ "Frodo"? Для возраста я могу сделать:
assertThat(characterAges).hasValue(34);
И я знаю, что мог:
assertThat(characterAges.keySet())
.extracting("name")
.contains("Frodo");
Но потом я теряю свою беглость. Что я действительно хочу, это что-то вроде этого:
assertThat(characterAges)
.hasKey(key.extracting("name").contains("Frodo")
.hasValue(34);
Или даже лучше, чтобы я мог убедиться, что мой ключ и значение соответствуют:
assertThat(characterAges)
.hasEntry(key.extracting("name").contains("Frodo"), 34);
Возможно ли подобное?