我想使用AssertJ库检查单元测试中Map值内的列表:
public class Group {
List<Player> players = new ArrayList<>();
public Group(List<Player> players) {
this.players.addAll(players);
}
}
Map<Character, Group> generatedGroups = receiveFromAnyMethod();
在一个Map我有这个:
A: Group A -> players(playerA, playerB)
如何检查组内的列表?我想我应该使用一个提取方法,flatExtracting方法,但我不知道如何操作。
3条答案
按热度按时间lh80um4z1#
假设
character
是输入键,player1
和player2
是内部列表的预期内容,您可以编写:或类型安全,如果
Group
提供getPlayers()
:参考:
extracting(String, InstanceOfAssertFactory)
extracting(Function, InstanceOfAssertFactory)
Assertions.as(InstanceOfAssertFactory)
InstanceOfAssertFactories.LIST
InstanceOfAssertFactories.list(Class)
elcex8rz2#
y53ybaqx3#
以下是与特定用例略有不同的答案。
我们希望AssertResponse对象中是否存在头。下面是使用AssertJAssert验证头
ResponseEntity.ok().contentType(APPLICATION_JSON)
的单元测试