public async Task Handle_GivenNullRequest_ShouldThrowArgumentNullException() { // Arrange var sut = new GetTeamsForPlayerQueryHandler(It.IsAny <IMapper>(), It.IsAny <IDeletableEntityRepository <PlayerTeam> >(), It.IsAny <IDeletableEntityRepository <Player> >()); // Act & Assert await Should.ThrowAsync <ArgumentNullException>(sut.Handle(null, It.IsAny <CancellationToken>())); }
public async Task Handle_GivenInvalidRequest_ShouldThrowNotFoundException() { // Arrange var query = new GetTeamsForPlayerQuery { UserId = "InvalidId", WithDeleted = false }; var playersRepository = new EfDeletableEntityRepository <Player>(this.dbContext); var sut = new GetTeamsForPlayerQueryHandler(this.mapper, this.deletableEntityRepository, playersRepository); // Act & Assert await Should.ThrowAsync <NotFoundException>(sut.Handle(query, It.IsAny <CancellationToken>())); }
public async Task Handle_GivenValidRequest_ShouldReturnViewModel() { // Arrange var query = new GetTeamsForPlayerQuery { UserId = "Foo1", WithDeleted = false }; var playersRepository = new EfDeletableEntityRepository <Player>(this.dbContext); var sut = new GetTeamsForPlayerQueryHandler(this.mapper, this.deletableEntityRepository, playersRepository); // Act var viewModel = await sut.Handle(query, It.IsAny <CancellationToken>()); // Assert viewModel.ShouldNotBeNull(); viewModel.PlayerTeams.ShouldNotBeEmpty(); }