public void Verify_Account_Response_Test()
        {
            using (var httpClient = FakeClientWithJsonResponse("TestData\\VerifyAccount.json"))
            {
                var apiClient = new HelloSignClient(httpClient);
                var t = apiClient.VerifyAccount("*****@*****.**");
                var expected = new HSAccount
                {
                    EmailAddress = "*****@*****.**"
                };

                Assert.Equal(expected, t.Result.Account);
            }
        }
        public void Get_Account_Response_Test()
        {
            using (var httpClient = FakeClientWithJsonResponse("TestData\\GetAccount-OK.json"))
            {
                var apiClient = new HelloSignClient(httpClient);
                var t = apiClient.GetAccount();

                var expected = new HSAccount
                {
                    AccountId = "abcXYZ",
                    EmailAddress = "*****@*****.**",
                    IsPaidHS = true,
                    IsPaidHF = false,
                    CallbackUrl = null,
                    RoleCode = null,
                    Quotas = new HSQuotas
                    {
                        ApiSignatureRequest = 1250,
                        DocumentsLeft = null,
                        TemplatesLeft = null
                    }
                };

                Assert.Equal(expected, t.Result.Account);
            }
        }
        public void Update_Account_Response_Test()
        {
            using (var httpClient = FakeClientWithJsonResponse("TestData\\UpdateAccount.json"))
            {
                var apiClient = new HelloSignClient(httpClient);
                var t = apiClient.UpdateAccount("https://www.example.com/callback");
                var expected = new HSAccount
                {
                    AccountId = "5008b25c7f67153e57d5a357b1687968068fb465",
                    EmailAddress = "*****@*****.**",
                    IsPaidHS = true,
                    IsPaidHF = false,
                    Quotas = new HSQuotas { ApiSignatureRequest = 1250 },
                    CallbackUrl = "https://www.example.com/callback",
                };

                Assert.Equal(expected, t.Result.Account);
            }
        }
        public void Create_Account_Response_Test()
        {
            using (var httpClient = FakeClientWithJsonResponse("TestData\\CreateAccount.json"))
            {
                var apiClient = new HelloSignClient(httpClient);
                var t = apiClient.CreateAccount("*****@*****.**", "somepassowrd");
                var expected = new HSAccount
                {
                    AccountId = "a2b31224f7e6fb5581d2f8cbd91cf65fa2f86aae",
                    EmailAddress = "*****@*****.**",
                    IsPaidHS = false,
                    IsPaidHF = false,
                    Quotas = new HSQuotas
                    {
                        DocumentsLeft = 3,
                        ApiSignatureRequest = 0,
                        TemplatesLeft = 1
                    }
                };

                Assert.Equal(expected, t.Result.Account);
            }
        }