public void GolfClubMembershipApplicationService_RequestClubMembership_ClubNotCreated_ErrorThrown() { Mock <IAggregateRepository <GolfClubAggregate> > golfClubRepository = new Mock <IAggregateRepository <GolfClubAggregate> >(); golfClubRepository.Setup(g => g.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)) .ReturnsAsync(GolfClubTestData.GetEmptyGolfClubAggregate()); Mock <IAggregateRepository <PlayerAggregate> > playerRepository = new Mock <IAggregateRepository <PlayerAggregate> >(); playerRepository.Setup(p => p.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)) .ReturnsAsync(PlayerTestData.GetRegisteredPlayerAggregate()); Mock <IAggregateRepository <GolfClubMembershipAggregate> > golfClubMembershipRepository = new Mock <IAggregateRepository <GolfClubMembershipAggregate> >(); golfClubMembershipRepository.Setup(g => g.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)).ReturnsAsync(GolfClubMembershipTestData.GetCreatedGolfClubMembershipAggregate()); GolfClubMembershipApplicationService service = new GolfClubMembershipApplicationService(golfClubRepository.Object, playerRepository.Object, golfClubMembershipRepository.Object); Should.Throw <InvalidDataException>(async() => await service.RequestClubMembership(GolfClubMembershipTestData.PlayerId, GolfClubMembershipTestData.AggregateId, CancellationToken.None)); golfClubMembershipRepository.Verify( x => x.SaveChanges(It.IsAny <GolfClubMembershipAggregate>(), CancellationToken.None), Times.Never); }
public async Task GolfClubMembershipApplicationService_RequestClubMembership_MembershipRequestProcessed() { Mock <IAggregateRepository <GolfClubAggregate> > golfClubRepository = new Mock <IAggregateRepository <GolfClubAggregate> >(); golfClubRepository.Setup(g => g.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)) .ReturnsAsync(GolfClubTestData.GetCreatedGolfClubAggregate()); Mock <IAggregateRepository <PlayerAggregate> > playerRepository = new Mock <IAggregateRepository <PlayerAggregate> >(); playerRepository.Setup(p => p.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)) .ReturnsAsync(PlayerTestData.GetRegisteredPlayerAggregate()); Mock <IAggregateRepository <GolfClubMembershipAggregate> > golfClubMembershipRepository = new Mock <IAggregateRepository <GolfClubMembershipAggregate> >(); golfClubMembershipRepository.Setup(g => g.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)).ReturnsAsync(GolfClubMembershipTestData.GetCreatedGolfClubMembershipAggregate()); GolfClubMembershipApplicationService service = new GolfClubMembershipApplicationService(golfClubRepository.Object, playerRepository.Object, golfClubMembershipRepository.Object); await service.RequestClubMembership(GolfClubMembershipTestData.PlayerId, GolfClubMembershipTestData.AggregateId, CancellationToken.None); golfClubMembershipRepository.Verify( x => x.SaveChanges(It.IsAny <GolfClubMembershipAggregate>(), CancellationToken.None), Times.Once); }
public void TournamentApplicationService_SignUpPlayerForTournament_NotMemberOfClub_ErrorThrown() { Mock <IAggregateRepository <TournamentAggregate> > tournamentRepository = new Mock <IAggregateRepository <TournamentAggregate> >(); tournamentRepository.Setup(t => t.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)).ReturnsAsync(TournamentTestData.GetCreatedTournamentAggregate); Mock <IAggregateRepository <PlayerAggregate> > playerRepository = new Mock <IAggregateRepository <PlayerAggregate> >(); playerRepository.Setup(p => p.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)).ReturnsAsync(PlayerTestData.GetRegisteredPlayerAggregate()); Mock <IAggregateRepository <GolfClubMembershipAggregate> > golfClubMembershipRepository = new Mock <IAggregateRepository <GolfClubMembershipAggregate> >(); golfClubMembershipRepository.Setup(g => g.GetLatestVersion(It.IsAny <Guid>(), CancellationToken.None)) .ReturnsAsync(GolfClubMembershipTestData.GetCreatedGolfClubMembershipAggregate); TournamentApplicationService tournamentApplicationService = new TournamentApplicationService(tournamentRepository.Object, playerRepository.Object, golfClubMembershipRepository.Object); Should.Throw <InvalidOperationException>(async() => { await tournamentApplicationService.SignUpPlayerForTournament(TournamentTestData.AggregateId, TournamentTestData.PlayerId, CancellationToken.None); }); }