public async Task Handle_GivenValidRequest_ShouldReturnViewModel() { // Arrange var query = new GetMatchDetailsQuery { Id = 1 }; var userAccessorMock = new Mock <IUserAccessor>(); userAccessorMock.Setup(x => x.UserId).Returns("Foo1"); var sut = new GetMatchDetailsQueryHandler(this.deletableEntityRepository, this.mapper, userAccessorMock.Object); // Act var viewModel = await sut.Handle(query, It.IsAny <CancellationToken>()); // Assert viewModel.ShouldNotBeNull(); viewModel.HomeTeam.IsOwner.ShouldBe(true); viewModel.AwayTeam.IsOwner.ShouldBe(false); viewModel.HomeTeam.Name.ShouldBe("FooTeam1"); viewModel.AwayTeam.Name.ShouldBe("FooTeam2"); viewModel.HomeTeamScore.ShouldBe(2); viewModel.AwayTeamScore.ShouldBe(1); }
public async Task Handle_GivenInvalidRequest_ShouldThrowNotFoundException() { // Arrange var query = new GetMatchDetailsQuery { Id = 123123 }; var sut = new GetMatchDetailsQueryHandler(this.deletableEntityRepository, It.IsAny <IMapper>(), It.IsAny <IUserAccessor>()); // Act & Assert await Should.ThrowAsync <NotFoundException>(sut.Handle(query, It.IsAny <CancellationToken>())); }
public async Task <IActionResult> Details(GetMatchDetailsQuery query) { var viewModel = await this.Mediator.Send(query); return(this.View(viewModel)); }
public async Task <IActionResult> Details(GetMatchDetailsQuery query) => this.View(await this.Mediator.Send(query));