Example #1
0
        public async Task ReturnsIndividualCustomerForNewZealand()
        {
            // given
            var customer = await _resourceFactory.CreateForeignCustomer();

            var subject = new CustomersClient(_clientConfiguration);

            // when
            var result = await subject.ForIdAsync(customer.Id);

            var actual = result.Item;

            // then
            Assert.That(actual, Is.Not.Null);
            Assert.That(actual.Id, Is.Not.Null);
            Assert.That(actual.AddressLine1, Is.Not.Null.And.EqualTo(customer.AddressLine1));
            Assert.That(actual.AddressLine2, Is.Not.Null.And.EqualTo(customer.AddressLine2));
            Assert.That(actual.AddressLine3, Is.Not.Null.And.EqualTo(customer.AddressLine3));
            Assert.That(actual.City, Is.Not.Null.And.EqualTo(customer.City));
            Assert.That(actual.CountryCode, Is.Not.Null.And.EqualTo(customer.CountryCode));
            Assert.That(actual.CreatedAt, Is.Not.EqualTo(default(DateTimeOffset)));
            Assert.That(actual.Email, Is.Not.Null.And.EqualTo(customer.Email));
            Assert.That(actual.FamilyName, Is.Not.Null.And.EqualTo(customer.FamilyName));
            Assert.That(actual.GivenName, Is.Not.Null.And.EqualTo(customer.GivenName));
            Assert.That(actual.Language, Is.Not.Null.And.EqualTo(customer.Language));
            Assert.That(actual.Metadata, Is.Not.Null.And.EqualTo(customer.Metadata));
            Assert.That(actual.PhoneNumber, Is.Not.Null.And.EqualTo(customer.PhoneNumber));
            Assert.That(actual.PostalCode, Is.Not.Null.And.EqualTo(customer.PostalCode));
            Assert.That(actual.Region, Is.Not.Null.And.EqualTo(customer.Region));
        }
Example #2
0
        public async Task CallsIndividualCustomersEndpoint()
        {
            // given
            var subject = new CustomersClient(_clientConfiguration);
            var id      = "CU12345678";

            // when
            await subject.ForIdAsync(id);

            // then
            _httpTest
            .ShouldHaveCalled("https://api.gocardless.com/customers/CU12345678")
            .WithVerb(HttpMethod.Get);
        }
Example #3
0
        public void IdIsNullOrWhiteSpaceThrows(string id)
        {
            // given
            var subject = new CustomersClient(_clientConfiguration);

            // when
            AsyncTestDelegate test = () => subject.ForIdAsync(id);

            // then
            var ex = Assert.ThrowsAsync <ArgumentException>(test);

            Assert.That(ex.Message, Is.Not.Null);
            Assert.That(ex.ParamName, Is.EqualTo(nameof(id)));
        }