public void LookupThreeDSecure_IsSuccesfulWithNoCustomerInfo()
        {
            var gateway    = GetGateway();
            var clientData = GetClientDataString(gateway);

            ThreeDSecureLookupRequest request = new ThreeDSecureLookupRequest {
                Amount     = "199.00",
                ClientData = clientData,
            };

            ThreeDSecureLookupResponse result = gateway.ThreeDSecure.Lookup(request);

            PaymentMethodNonce paymentMethod = result.PaymentMethod;
            ThreeDSecureLookup lookup        = result.Lookup;

            Assert.IsNull(result.Error);
            Assert.IsNotNull(result.PayloadString);
            Assert.IsNotNull(paymentMethod.Nonce);
            Assert.IsNotNull(paymentMethod.ThreeDSecureInfo);
            Assert.IsTrue(paymentMethod.ThreeDSecureInfo.LiabilityShiftPossible);
            Assert.IsFalse(paymentMethod.ThreeDSecureInfo.LiabilityShifted);
            Assert.IsNotNull(lookup.AcsUrl);
            Assert.IsNotNull(lookup.ThreeDSecureVersion);
            Assert.IsNotNull(lookup.TransactionId);
        }
Ejemplo n.º 2
0
        public void SetsPropertiesFromDynamicObject()
        {
            var rawJSON        = @"{
                ""acsUrl"": ""https://braintreepayments.com"",
                ""threeDSecureVersion"": ""2.0"",
                ""transactionId"": ""123-txn-id"",
                ""unused"": ""value""
            }";
            var lookupResponse = JsonConvert.DeserializeObject <dynamic>(rawJSON);

            ThreeDSecureLookup lookup = new ThreeDSecureLookup(lookupResponse);

            Assert.AreEqual("https://braintreepayments.com", lookup.AcsUrl);
            Assert.AreEqual("2.0", lookup.ThreeDSecureVersion);
            Assert.AreEqual("123-txn-id", lookup.TransactionId);
        }
        public void LookupThreeDSecure_IsSuccessful()
        {
            var gateway = GetGateway();

            ThreeDSecureLookupAddress billingAddress = new ThreeDSecureLookupAddress
            {
                GivenName         = "First",
                Surname           = "Last",
                PhoneNumber       = "1234567890",
                Locality          = "Oakland",
                CountryCodeAlpha2 = "US",
                StreetAddress     = "123 Address",
                ExtendedAddress   = "Unit 2",
                PostalCode        = "94112",
                Region            = "CA"
            };

            var clientData = GetClientDataString(gateway);

            ThreeDSecureLookupRequest request = new ThreeDSecureLookupRequest {
                Amount         = "199.00",
                ClientData     = clientData,
                Email          = "*****@*****.**",
                BillingAddress = billingAddress
            };

            ThreeDSecureLookupResponse result = gateway.ThreeDSecure.Lookup(request);

            PaymentMethodNonce paymentMethod = result.PaymentMethod;
            ThreeDSecureLookup lookup        = result.Lookup;

            Assert.IsNull(result.Error);
            Assert.IsNotNull(result.PayloadString);
            Assert.IsNotNull(paymentMethod.Nonce);
            Assert.IsNotNull(paymentMethod.ThreeDSecureInfo);
            Assert.IsTrue(paymentMethod.ThreeDSecureInfo.LiabilityShiftPossible);
            Assert.IsFalse(paymentMethod.ThreeDSecureInfo.LiabilityShifted);
            Assert.IsNotNull(lookup.AcsUrl);
            Assert.IsNotNull(lookup.ThreeDSecureVersion);
            Assert.IsNotNull(lookup.TransactionId);
        }
        public void LookupThreeDSecure_HasValidationError()
        {
            var gateway = GetGateway();

            ThreeDSecureLookupAddress billingAddress = new ThreeDSecureLookupAddress
            {
                GivenName         = "\x00",
                Surname           = "Lést",
                PhoneNumber       = "1234567890",
                Locality          = "Oakland",
                CountryCodeAlpha2 = "US",
                StreetAddress     = "123 Address",
                ExtendedAddress   = "Unit 2",
                PostalCode        = "94112",
                Region            = "CA"
            };

            var clientData = GetClientDataString(gateway);

            ThreeDSecureLookupRequest request = new ThreeDSecureLookupRequest {
                Amount         = "199.00",
                ClientData     = clientData,
                Email          = "*****@*****.**",
                BillingAddress = billingAddress
            };

            ThreeDSecureLookupResponse result = gateway.ThreeDSecure.Lookup(request);

            PaymentMethodNonce paymentMethod = result.PaymentMethod;
            ThreeDSecureLookup lookup        = result.Lookup;

            Assert.IsNotNull(result.PayloadString);
            Assert.IsNull(paymentMethod);
            Assert.IsNull(lookup);

            Assert.IsNotNull(result.Error);
            StringAssert.Contains("format is invalid", (string)result.Error.message);
        }