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);
        }
        public async Task <CredentialsCreateResponse> CreateAsync([FromBody] PartnerCredentialsCreateRequest request)
        {
            try
            {
                await _partnerCredentialsService.CreateAsync(request.ClientId, request.ClientSecret, request.PartnerId);
            }
            catch (PartnerCredentialsAlreadyExistsException)
            {
                _log.Info("Partner credentials already exists", new { request.ClientId });

                return(new CredentialsCreateResponse {
                    Error = CredentialsError.LoginAlreadyExists
                });
            }

            return(new CredentialsCreateResponse {
                Error = CredentialsError.None
            });
        }