public void Arrange() { Mediator = new Mock <IMediator>(); Logger = new Mock <ILog>(); Mapper = new Mock <IMapper>(); HashingService = new Mock <IHashingService>(); var orchestrator = new AccountsOrchestrator(Mediator.Object, Logger.Object, Mapper.Object, HashingService.Object); Controller = new EmployerAccountsController(orchestrator); UrlHelper = new Mock <UrlHelper>(); Controller.Url = UrlHelper.Object; var accountsResponse = new GetPagedEmployerAccountsResponse { Accounts = new List <Domain.Models.Account.Account>() }; Mediator.Setup(x => x.SendAsync(It.IsAny <GetPagedEmployerAccountsQuery>())).ReturnsAsync(accountsResponse); var balancesResponse = new GetAccountBalancesResponse { Accounts = new List <AccountBalance>() }; Mediator.Setup(x => x.SendAsync(It.IsAny <GetAccountBalancesRequest>())).ReturnsAsync(balancesResponse); }
public async Task And_Exception_Then_Returns_Bad_Request( long accountId, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmployerAccountsController controller) { mockMediator .Setup(mediator => mediator.Send( It.IsAny <GetAccountQuery>(), It.IsAny <CancellationToken>())) .Throws <InvalidOperationException>(); var controllerResult = await controller.GetById(accountId) as BadRequestResult; controllerResult.StatusCode.Should().Be((int)HttpStatusCode.BadRequest); }
public async Task Then_Gets_Account_From_Mediator( long accountId, GetAccountQueryResult mediatorResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmployerAccountsController controller) { mockMediator .Setup(mediator => mediator.Send( It.Is <GetAccountQuery>(c => c.AccountId.Equals(accountId)), It.IsAny <CancellationToken>())) .ReturnsAsync(mediatorResult); var controllerResult = await controller.GetById(accountId) as ObjectResult; Assert.IsNotNull(controllerResult); controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK); var model = controllerResult.Value as GetAccountResponse; Assert.IsNotNull(model); model.HashedAccountId.Should().Be(mediatorResult.HashedAccountId); }
public async Task Then_Gets_Account_From_Mediator( string hashedAccountId, GetAccountLegalEntitiesQueryResult mediatorResult, [Frozen] Mock <IMediator> mockMediator, [Greedy] EmployerAccountsController controller) { mockMediator .Setup(mediator => mediator.Send( It.Is <GetAccountLegalEntitiesQuery>(c => c.HashedAccountId.Equals(hashedAccountId)), It.IsAny <CancellationToken>())) .ReturnsAsync(mediatorResult); var controllerResult = await controller.GetAccountLegalEntities(hashedAccountId) as ObjectResult; Assert.IsNotNull(controllerResult); controllerResult.StatusCode.Should().Be((int)HttpStatusCode.OK); var model = controllerResult.Value as GetAccountLegalEntitiesResponse; Assert.IsNotNull(model); model.AccountLegalEntities.Should().BeEquivalentTo(mediatorResult.AccountLegalEntities, options => options.Excluding(x => x.Agreements)); }