private async Task ShouldGetEntity()
        {
            var responseObject = new OnboardEntityDetailsResponse {
                Id = "entity_id"
            };

            _apiClient
            .Setup(x =>
                   x.Get <OnboardEntityDetailsResponse>(
                       "accounts/entities/entity_id",
                       It.IsAny <SdkAuthorization>(),
                       It.IsAny <CancellationToken>()))
            .ReturnsAsync(responseObject);

            var response = await _accountsClient.GetEntity(responseObject.Id);

            response.ShouldNotBeNull();
            response.ShouldBe(responseObject);
        }
Beispiel #2
0
        public async Task ShouldCreateGetAndUpdateOnboardEntity()
        {
            string randomReference = RandomString(15);
            OnboardEntityRequest onboardEntityRequest = new OnboardEntityRequest
            {
                Reference      = randomReference,
                ContactDetails = new ContactDetails {
                    Phone = new AccountPhone {
                        Number = "2345678910"
                    }
                },
                Profile =
                    new Profile
                {
                    Urls = new List <string> {
                        "https://www.superheroexample.com"
                    },
                    Mccs = new List <string> {
                        "0742"
                    }
                },
                Individual = new Individual
                {
                    FirstName         = "Bruce",
                    LastName          = "Wayne",
                    TradingName       = "Batman's Super Hero Masks",
                    RegisteredAddress = new Address
                    {
                        AddressLine1 = "Checkout.com",
                        AddressLine2 = "90 Tottenham Court Road",
                        City         = "London",
                        State        = "London",
                        Zip          = "WIT 4TJ",
                        Country      = CountryCode.GB
                    },
                    NationalTaxId = "TAX123456",
                    DateOfBirth   = new DateOfBirth {
                        Day = 5, Month = 6, Year = 1996
                    },
                    Identification = new Identification {
                        NationalIdNumber = "AB123456C"
                    },
                },
            };

            OnboardEntityResponse entityResponse = await DefaultApi.AccountsClient().CreateEntity(onboardEntityRequest);

            entityResponse.ShouldNotBeNull();

            string entityId = entityResponse.Id;

            entityId.ShouldNotBeNullOrEmpty();
            entityResponse.Reference.ShouldBe(randomReference);

            OnboardEntityDetailsResponse entityDetailsResponse = await DefaultApi.AccountsClient().GetEntity(entityId);

            entityDetailsResponse.ShouldNotBeNull();
            entityDetailsResponse.Id.ShouldBe(entityId);
            entityDetailsResponse.Reference.ShouldBe(randomReference);
            entityDetailsResponse.ContactDetails.ShouldNotBeNull();
            entityDetailsResponse.ContactDetails.Phone.ShouldNotBeNull();
            entityDetailsResponse.ContactDetails.Phone.Number.ShouldBe(onboardEntityRequest.ContactDetails.Phone
                                                                       .Number);
            entityDetailsResponse.Individual.ShouldNotBeNull();
            entityDetailsResponse.Individual.FirstName.ShouldBe(onboardEntityRequest.Individual.FirstName);
            entityDetailsResponse.Individual.LastName.ShouldBe(onboardEntityRequest.Individual.LastName);
            entityDetailsResponse.Individual.TradingName.ShouldBe(onboardEntityRequest.Individual.TradingName);
            entityDetailsResponse.Individual.NationalTaxId.ShouldBe(onboardEntityRequest.Individual.NationalTaxId);

            onboardEntityRequest.Individual.FirstName = "John";

            OnboardEntityResponse updatedEntityResponse =
                await DefaultApi.AccountsClient().UpdateEntity(entityId, onboardEntityRequest);

            updatedEntityResponse.ShouldNotBeNull();
            updatedEntityResponse.HttpStatusCode.ShouldNotBeNull();
            updatedEntityResponse.ResponseHeaders.ShouldNotBeNull();

            OnboardEntityDetailsResponse verifyUpdated = await DefaultApi.AccountsClient().GetEntity(entityId);

            verifyUpdated.ShouldNotBeNull();
            onboardEntityRequest.Individual.FirstName.ShouldBe(verifyUpdated.Individual.FirstName);
        }