public async Task Then_Returns_Legal_Entity(
            GetLegalEntityQuery query,
            AccountLegalEntity legalEntity,
            [Frozen] Mock <IApiClient> mockApiClient,
            GetLegalEntityQueryHandler handler)
        {
            mockApiClient
            .Setup(client => client.Get <AccountLegalEntity>(It.IsAny <GetAccountLegalEntityRequest>()))
            .ReturnsAsync(legalEntity);

            var result = await handler.Handle(query, CancellationToken.None);

            result.AccountLegalEntity.Should().Be(legalEntity);
        }
        public async Task Then_Gets_Legal_Entity(
            GetLegalEntityQuery query,
            AccountLegalEntity legalEntity,
            [Frozen] Mock <IApiClient> mockApiClient,
            GetLegalEntityQueryHandler handler)
        {
            mockApiClient
            .Setup(client => client.Get <AccountLegalEntity>(It.IsAny <GetAccountLegalEntityRequest>()))
            .ReturnsAsync(legalEntity);

            await handler.Handle(query, CancellationToken.None);

            mockApiClient.Verify(client => client.Get <AccountLegalEntity>(It.Is <GetAccountLegalEntityRequest>(r => r.Id.Equals(query.Id))), Times.Once);
        }
        public async Task Then_Hashes_The_Id(
            GetLegalEntityQuery query,
            AccountLegalEntity legalEntity,
            [Frozen] Mock <IApiClient> mockApiClient,
            [Frozen] Mock <IEncodingService> encodingService,
            GetLegalEntityQueryHandler handler)
        {
            mockApiClient
            .Setup(client => client.Get <AccountLegalEntity>(It.IsAny <GetAccountLegalEntityRequest>()))
            .ReturnsAsync(legalEntity);

            await handler.Handle(query, CancellationToken.None);

            encodingService.Verify(service => service.Encode(legalEntity.AccountLegalEntityId, EncodingType.PublicAccountLegalEntityId), Times.Once);
        }
        public async Task Then_Uses_correct_Api_Base_Url(
            GetLegalEntityQuery query,
            AccountLegalEntity legalEntity,
            [Frozen] Mock <IApiClient> mockApiClient,
            [Frozen] Mock <IOptions <ReservationsApiConfiguration> > mockOptions,
            [Frozen] Mock <IEncodingService> encodingService,
            [Frozen] ReservationsApiConfiguration configuration,
            GetLegalEntityQueryHandler handler)
        {
            mockOptions.Setup(c => c.Value).Returns(configuration);

            mockApiClient
            .Setup(client => client.Get <AccountLegalEntity>(It.IsAny <GetAccountLegalEntityRequest>()))
            .ReturnsAsync(legalEntity);

            await handler.Handle(query, CancellationToken.None);

            mockApiClient.Verify(client => client.Get <AccountLegalEntity>(It.Is <GetAccountLegalEntityRequest>(r => r.BaseUrl.Equals(configuration.Url))), Times.Once);
        }
Пример #5
0
        public GetLegalEntityQueryTestsFixture()
        {
            Db = new Mock <EmployerAccountsDbContext>();

            LegalEntities      = new List <LegalEntity>();
            LegalEntitiesDbSet = new DbSetStub <LegalEntity>(LegalEntities);

            AccountLegalEntities      = new List <AccountLegalEntity>();
            AccountLegalEntitiesDbSet = new DbSetStub <AccountLegalEntity>(AccountLegalEntities);

            UserA = new User {
                Id = 1, Email = "*****@*****.**"
            };
            UserB = new User {
                Id = 2, Email = "*****@*****.**"
            };
            Users = new List <User> {
                UserA, UserB
            };
            UsersDbSet = new DbSetStub <User>(Users);

            Db.Setup(d => d.LegalEntities).Returns(LegalEntitiesDbSet);
            Db.Setup(d => d.AccountLegalEntities).Returns(AccountLegalEntitiesDbSet);
            Db.Setup(d => d.Users).Returns(UsersDbSet);

            Handler = new GetLegalEntityQueryHandler(new Lazy <EmployerAccountsDbContext>(() => Db.Object));

            SetAccount()
            .SetLegalEntity()
            .SetLegalAccountLegalEntity()
            .AddLegalEntityAgreement(1, EmployerAccounts.Models.EmployerAgreement.EmployerAgreementStatus.Removed, UserA.Id)
            .AddLegalEntityAgreement(1, EmployerAccounts.Models.EmployerAgreement.EmployerAgreementStatus.Signed, UserB.Id)
            .AddLegalEntityAgreement(2, EmployerAccounts.Models.EmployerAgreement.EmployerAgreementStatus.Signed, UserA.Id)
            .AddLegalEntityAgreement(3, EmployerAccounts.Models.EmployerAgreement.EmployerAgreementStatus.Pending)
            .AddLegalEntityAgreement(3, EmployerAccounts.Models.EmployerAgreement.EmployerAgreementStatus.Expired)
            .EvaluateSignedAndPendingAgreementIdsForAllAccountLegalEntities();
        }
Пример #6
0
 public void Arrange()
 {
     _fixture        = new Fixture();
     _repositoryMock = new Mock <IQueryRepository <LegalEntityDto> >();
     _sut            = new GetLegalEntityQueryHandler(_repositoryMock.Object);
 }