public async Task GetAplosAccount_ReturnsAplosApiObject_WhenAplosAccountFound()
        {
            //Arrange
            var aplosAccount = new AplosApiAccountDetail {
                AccountNumber = 123, Name = "test"
            };
            var aplosAccountResponse = new AplosApiAccountResponse {
                Data = new AplosApiAccountData {
                    Account = aplosAccount,
                }
            };

            _mockAplosApiClient
            .Setup(mockAplosClient => mockAplosClient.GetAccount(aplosAccount.AccountNumber, default))
            .Returns(Task.FromResult(aplosAccountResponse));

            var mappedAplosAccount = new PexAplosApiObject {
                Id = aplosAccount.AccountNumber.ToString(), Name = aplosAccount.Name,
            };

            _mockAplosIntegrationMappingService.Setup(mockMappingService => mockMappingService.Map(aplosAccount)).Returns(mappedAplosAccount);

            AplosIntegrationService service = GetAplosIntegrationService();

            //Act
            PexAplosApiObject actualMappedAplosAccount = await service.GetAplosAccount(GetMapping(), aplosAccount.AccountNumber, default);

            //Assert
            Assert.Equal(mappedAplosAccount, actualMappedAplosAccount);
        }
        public async void GetAccount_ReturnsAccount_WithValidRequest()
        {
            //Arrange
            var messageHandler = new MockHttpMessageHandler(
                ($"/auth/clientid", HttpMethod.Get, HttpStatusCode.OK, File.ReadAllText("Samples/Response/GET_auth.json")),
                ($"/accounts/1601", HttpMethod.Get, HttpStatusCode.OK, File.ReadAllText("Samples/Response/GET_accounts_1601.json")));

            var httpClient = new HttpClient(messageHandler);

            _mockHttpClientFactory.Setup(mockFactory => mockFactory.CreateClient("")).Returns(httpClient);

            var aplosApiClient = new AplosApiClient(
                "acctid",
                "clientid",
                "pk",
                new Uri("https://www.pexcard.com/"),
                _mockHttpClientFactory.Object,
                _mockAccessTokenDecryptor.Object,
                _mockLogger.Object,
                null,
                null);

            //Act
            AplosApiAccountResponse apiResponse = await aplosApiClient.GetAccount(1601);

            //Assert
            Assert.NotNull(apiResponse);
            Assert.NotNull(apiResponse.Data);
            Assert.NotNull(apiResponse.Data.Account);

            var account = apiResponse.Data.Account;

            Assert.Equal(1601, account.AccountNumber);
            Assert.Equal("Ty Test Asset Dev", account.Name);
            Assert.Equal("asset", account.Category);
            Assert.True(account.IsEnabled);
            Assert.Equal("Register", account.Type);
            Assert.Equal("cash", account.Activity);
        }