public async Task When_Validate_Async_Is_Executed_For_Non_Existing_Partner_Credentials_Then_Error_Is_Thrown()
        {
            _partnerCredentials = null;

            await Assert.ThrowsAsync <PartnerCredentialsNotFoundException>(async() =>
                                                                           await _partnerCredentialsService.ValidateAsync(ClientId, "Non valid secret"));
        }
        When_Update_Async_Is_Executed_For_Non_Existing_Partner_Credentials_Then_Error_Is_Thrown()
        {
            _partnerCredentials = null;

            await Assert.ThrowsAsync <PartnerCredentialsNotFoundException>(async() =>
                                                                           await _partnerCredentialsService.UpdateAsync(ClientId, ClientSecret, PartnerId));
        }
        When_Create_Async_Is_Executed_For_Non_Existing_Client_Then_New_Partner_Credentials_Are_Created()
        {
            _partnerCredentials = null;

            await _partnerCredentialsService.CreateAsync(ClientId, ClientSecret, PartnerId);

            _partnerCredentialsRepositoryMock.Verify(x => x.InsertAsync(It.IsAny <PartnerCredentials>()), Times.Once);
        }
Esempio n. 4
0
 public async Task <IPartner> ConvertAsync(PartnerServiceAttribute input, CancellationToken cancellationToken)
 {
     return(PartnerService.Instance.CreatePartnerOperations(
                await PartnerCredentials.GenerateByApplicationCredentialsAsync(
                    input.ApplicationId,
                    await vault.GetSecretAsync(options.KeyVaultEndpoint, input.SecretName).ConfigureAwait(false),
                    input.ApplicationTenantId).ConfigureAwait(false),
                await GetPartnerHttpClientAsync(input.ApplicationTenantId).ConfigureAwait(false)));
 }
Esempio n. 5
0
        public async Task UpdateAsync(PartnerCredentials partnerCredentials)
        {
            var entity = _mapper.Map <PartnerCredentialsEntity>(partnerCredentials);

            entity.ClientId = _hashingHelper.Sha256HashEncoding1252(partnerCredentials.ClientId);

            using (var context = _contextFactory.CreateDataContext())
            {
                context.Update(entity);

                await context.SaveChangesAsync();
            }
        }
        public PartnerCredentialsServiceTests()
        {
            _partnerCredentials = new PartnerCredentials {
                ClientId = ClientId, PartnerId = PartnerId
            };
            _partnerCredentials.SetPassword(ClientSecret);

            _partnerCredentialsRepositoryMock.Setup(x => x.GetByClientIdAsync(It.IsAny <string>()))
            .Returns((string clientId) => Task.FromResult(_partnerCredentials));

            _partnerCredentialsRepositoryMock.Setup(x => x.GetByPartnerIdAsync(It.IsAny <string>()))
            .Returns((string partnerId) => Task.FromResult(_partnerCredentials));

            _partnerCredentialsService =
                new PartnerCredentialsService(_partnerCredentialsRepositoryMock.Object, EmptyLogFactory.Instance);
        }
Esempio n. 7
0
        public async Task CreateAsync(string clientId, string clientSecret, string partnerId)
        {
            var partnerCredentials = await _partnerCredentialsRepository.GetByClientIdAsync(clientId);

            if (partnerCredentials != null)
            {
                throw new PartnerCredentialsAlreadyExistsException();
            }

            partnerCredentials = new PartnerCredentials {
                ClientId = clientId, PartnerId = partnerId
            };

            partnerCredentials.SetPassword(clientSecret);

            await _partnerCredentialsRepository.InsertAsync(partnerCredentials);

            _log.Info("Partner credentials created", new { clientId });
        }