public async Task LeagueQueryPlayerInternalIdsFilterAndLeaguesFilterShouldReturnValidData() { var command = new LeaguesQuery { LeagueId = new[] { _testDbFixture.MockedDataInstance.LeagueForJoinId1, _testDbFixture.MockedDataInstance.LeagueForJoinId2, }, Pid = new [] { _testDbFixture.MockedDataInstance.Player1, _testDbFixture.MockedDataInstance.Player3, _testDbFixture.MockedDataInstance.Player5, } }; var playersService = Substitute.For <IPlayersService>(); await using (var context = _testDbFixture.LeaguesContextFactory.Create()) { var uow = new UnitOfWork <LeaguesContext>(context); var commandHandler = new LeaguesQueryHandler(uow, _mapper, playersService); List <LeagueDto> result = (await commandHandler.Handle(command, CancellationToken.None)).Items.ToList(); const int expectedLeaguesCount = 2; result.Count.Should().Be(expectedLeaguesCount); List <PlayerWithLeagueStatusDto> playerWithLeagueStatuses = result.SelectMany(l => l.PlayersLeagueStatuses).ToList(); const int player1ExistsInLeaguesCount = 4; playerWithLeagueStatuses.Count.Should().Be(player1ExistsInLeaguesCount); } }
public async Task LeagueQueryWithExternalIdOnlyShouldReturnValidData() { var command = new LeaguesQuery { PlayerExternalId = Guid.NewGuid().ToString(), }; var retDto = new PlayerInternalIdDto { InternalId = _testDbFixture.MockedDataInstance.Player1 }; var playersService = Substitute.For <IPlayersService>(); playersService.GetInternalIdAsync(command.PlayerExternalId).ReturnsForAnyArgs(retDto); await using (var context = _testDbFixture.LeaguesContextFactory.Create()) { var uow = new UnitOfWork <LeaguesContext>(context); var commandHandler = new LeaguesQueryHandler(uow, _mapper, playersService); List <LeagueDto> result = (await commandHandler.Handle(command, CancellationToken.None)).Items.ToList(); result.Count.Should().Be(context.Leagues.Count()); List <PlayerWithLeagueStatusDto> playerWithLeagueStatuses = result.SelectMany(l => l.PlayersLeagueStatuses).ToList(); const int player1ExistsInLeaguesCount = 2; playerWithLeagueStatuses.Count.Should().Be(player1ExistsInLeaguesCount); } }
public async Task <PagedResult <League> > GetMyLeagues( [FromQuery(Name = "id")] int[] leaguesId, [FromQuery] int?size, [FromQuery] int?page) { var query = new LeaguesQuery( _identityService.GetUserIdentity(), leaguesId ?? Array.Empty <int>(), Array.Empty <int>(), size, page); return(await _leaguesService.GetAsync(query)); }
public async Task LeagueQueryLeaguesFilterShouldReturnValidData() { var command = new LeaguesQuery { LeagueId = new[] { _testDbFixture.MockedDataInstance.LeagueForJoinId1, _testDbFixture.MockedDataInstance.LeagueForJoinId2, } }; var playersService = Substitute.For <IPlayersService>(); await using (var context = _testDbFixture.LeaguesContextFactory.Create()) { var uow = new UnitOfWork <LeaguesContext>(context); var commandHandler = new LeaguesQueryHandler(uow, _mapper, playersService); List <LeagueDto> result = (await commandHandler.Handle(command, CancellationToken.None)).Items.ToList(); const int expectedLeaguesCount = 2; result.Count.Should().Be(expectedLeaguesCount); } }
public Task <PagedResult <LeagueDto> > GetLeagues([FromQuery] LeaguesQuery query) { return(_mediatr.Send(query)); }