次のようなクラスがあるとします。
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);
このようなことは可能ですか?