Пример #1
0
        public void TestActionReasonOnOrphanedRefund()
        {
            var credit = new credit();

            credit.orderId      = "12344";
            credit.amount       = 2;
            credit.orderSource  = orderSourceType.ecommerce;
            credit.reportGroup  = "Planets";
            credit.actionReason = "SUSPECT_FRAUD";

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(".*<actionReason>SUSPECT_FRAUD</actionReason>.*", RegexOptions.Singleline),
                    It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><creditResponse><litleTxnId>123</litleTxnId></creditResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.Credit(credit);
        }
Пример #2
0
        public void TestSurchargeAmount()
        {
            var capture = new capture();

            capture.litleTxnId      = 3;
            capture.amount          = 2;
            capture.surchargeAmount = 1;
            capture.payPalNotes     = "note";
            capture.reportGroup     = "Planets";

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<amount>2</amount>\r\n<surchargeAmount>1</surchargeAmount>\r\n<payPalNotes>note</payPalNotes>.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><captureResponse><litleTxnId>123</litleTxnId></captureResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.Capture(capture);
        }
Пример #3
0
        public void TestSimpleRequest()
        {
            var update = new updateCardValidationNumOnToken();

            update.orderId           = "12344";
            update.litleToken        = "1111222233334444";
            update.cardValidationNum = "321";
            update.id          = "123";
            update.reportGroup = "Default Report Group";

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<updateCardValidationNumOnToken id=\"123\" reportGroup=\"Default Report Group\".*<orderId>12344</orderId>.*<litleToken>1111222233334444</litleToken>.*<cardValidationNum>321</cardValidationNum>.*</updateCardValidationNumOnToken>.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><updateCardValidationNumOnTokenResponse><litleTxnId>4</litleTxnId><orderId>12344</orderId><response>801</response><message>Token Successfully Registered</message><responseTime>2012-10-10T10:17:03</responseTime></updateCardValidationNumOnTokenResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.UpdateCardValidationNumOnToken(update);
        }
        public void TestSurchargeAmount()
        {
            var reversal = new authReversal();

            reversal.litleTxnId      = 3;
            reversal.amount          = 2;
            reversal.surchargeAmount = 1;
            reversal.payPalNotes     = "note";
            reversal.reportGroup     = "Planets";

            var mock = new Mock <Communications>(new Dictionary <string, StringBuilder>());

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<amount>2</amount>\r\n<surchargeAmount>1</surchargeAmount>\r\n<payPalNotes>note</payPalNotes>.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><authReversalResponse><litleTxnId>123</litleTxnId></authReversalResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.AuthReversal(reversal);
        }
Пример #5
0
        public void TestGiftCardAuthReversalSimple()
        {
            giftCardAuthReversal giftCard = new giftCardAuthReversal();

            giftCard.id                     = "1";
            giftCard.reportGroup            = "Planets";
            giftCard.litleTxnId             = 123456789;
            giftCard.originalRefCode        = "abc123";
            giftCard.originalAmount         = 500;
            giftCard.originalTxnTime        = new DateTime(2017, 01, 01);
            giftCard.originalSystemTraceId  = 123;
            giftCard.originalSequenceNumber = "123456";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleTxnId>123456789</litleTxnId>\r\n<originalRefCode>abc123</originalRefCode>\r\n<originalAmount>500</originalAmount>\r\n<originalTxnTime>2017-01-01T00:00:00Z</originalTxnTime>\r\n<originalSystemTraceId>123</originalSystemTraceId>\r\n<originalSequenceNumber>123456</originalSequenceNumber>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.18' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><giftCardAuthReversalResponse><litleTxnId>123</litleTxnId></giftCardAuthReversalResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            giftCardAuthReversalResponse giftCardAuthReversalResponse = litle.GiftCardAuthReversal(giftCard);

            Assert.AreEqual(123, giftCardAuthReversalResponse.litleTxnId);
        }
Пример #6
0
        public void TestMerchantData()
        {
            echeckVerification echeckVerification = new echeckVerification();

            echeckVerification.orderId       = "1";
            echeckVerification.amount        = 2;
            echeckVerification.orderSource   = orderSourceType.ecommerce;
            echeckVerification.billToAddress = new contact();
            echeckVerification.billToAddress.addressLine1 = "900";
            echeckVerification.billToAddress.city         = "ABC";
            echeckVerification.billToAddress.state        = "MA";
            echeckVerification.merchantData                    = new merchantDataType();
            echeckVerification.merchantData.campaign           = "camp";
            echeckVerification.merchantData.affiliate          = "affil";
            echeckVerification.merchantData.merchantGroupingId = "mgi";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<echeckVerification.*<orderId>1</orderId>.*<amount>2</amount.*<merchantData>.*<campaign>camp</campaign>.*<affiliate>affil</affiliate>.*<merchantGroupingId>mgi</merchantGroupingId>.*</merchantData>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.13' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><echeckVerificationResponse><litleTxnId>123</litleTxnId></echeckVerificationResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.EcheckVerification(echeckVerification);
        }
Пример #7
0
        public void TestMerchantData()
        {
            var echeckRedeposit = new echeckRedeposit();

            echeckRedeposit.litleTxnId                      = 1;
            echeckRedeposit.merchantData                    = new merchantDataType();
            echeckRedeposit.merchantData.campaign           = "camp";
            echeckRedeposit.merchantData.affiliate          = "affil";
            echeckRedeposit.merchantData.merchantGroupingId = "mgi";

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<echeckRedeposit.*<litleTxnId>1</litleTxnId>.*<merchantData>.*<campaign>camp</campaign>.*<affiliate>affil</affiliate>.*<merchantGroupingId>mgi</merchantGroupingId>.*</merchantData>.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.13' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><echeckRedepositResponse><litleTxnId>123</litleTxnId></echeckRedepositResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.EcheckRedeposit(echeckRedeposit);
        }
        public void TestSimpleRequest()
        {
            registerTokenRequestType register = new registerTokenRequestType();

            register.orderId       = "12344";
            register.accountNumber = "4100000000000001";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<registerTokenRequest.*<accountNumber>4100000000000001</accountNumber>.*</registerTokenRequest>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><registerTokenResponse><litleTxnId>4</litleTxnId><response>801</response><message>Token Successfully Registered</message><responseTime>2012-10-10T10:17:03</responseTime></registerTokenResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.RegisterToken(register);
        }
Пример #9
0
        public void TestRecyclingDataOnVoidResponse()
        {
            voidTxn voidTxn = new voidTxn();

            voidTxn.litleTxnId = 123;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.16' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><voidResponse><litleTxnId>123</litleTxnId><response>000</response><responseTime>2013-01-31T15:48:09</responseTime><postDate>2013-01-31</postDate><message>Approved</message><recycling><creditLitleTxnId>456</creditLitleTxnId></recycling></voidResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litleOnlineResponseTransactionResponseVoidResponse response = litle.DoVoid(voidTxn);

            Assert.AreEqual(123, response.litleTxnId);
            Assert.AreEqual(456, response.recycling.creditLitleTxnId);
        }
Пример #10
0
        public void TestSurchargeAmount()
        {
            captureGivenAuth capture = new captureGivenAuth();

            capture.amount          = 2;
            capture.surchargeAmount = 1;
            capture.orderSource     = orderSourceType.ecommerce;
            capture.reportGroup     = "Planets";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<amount>2</amount>\r\n<surchargeAmount>1</surchargeAmount>\r\n<orderSource>ecommerce</orderSource>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><captureGivenAuthResponse><litleTxnId>123</litleTxnId></captureGivenAuthResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.CaptureGivenAuth(capture);
        }
Пример #11
0
        public void TestFraudFilterOverride()
        {
            sale sale = new sale();

            sale.orderId             = "12344";
            sale.amount              = 2;
            sale.orderSource         = orderSourceType.ecommerce;
            sale.reportGroup         = "Planets";
            sale.fraudFilterOverride = false;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<fraudFilterOverride>false</fraudFilterOverride>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><saleResponse><litleTxnId>123</litleTxnId></saleResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.Sale(sale);
        }
        public void TestQueryTransactionResponse()
        {
            queryTransaction query = new queryTransaction();

            query.id             = "myId";
            query.reportGroup    = "myReportGroup";
            query.origId         = "12345";
            query.origActionType = actionTypeEnum.D;
            query.origLitleTxnId = 54321;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<queryTransaction.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='10.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><queryTransactionResponse id='FindAuth' reportGroup='Mer5PM1' customerId='1'><response>000</response><responseTime>2015-12-03T10:30:02</responseTime><message>Original transaction found</message><results_max10><authorizationResponse id='1' reportGroup='defaultReportGroup'><litleTxnId>756027696701750</litleTxnId><orderId>GenericOrderId</orderId><response>000</response><responseTime>2015-04-14T12:04:59</responseTime><postDate>2015-04-14</postDate><message>Approved</message><authCode>055858</authCode></authorizationResponse><authorizationResponse id='1' reportGroup='defaultReportGroup'><litleTxnId>756027696701751</litleTxnId><orderId>GenericOrderId</orderId><response>000</response><responseTime>2015-04-14T12:04:59</responseTime><postDate>2015-04-14</postDate><message>Approved</message><authCode>055858</authCode></authorizationResponse><captureResponse><response>000</response><message>Deposit approved</message></captureResponse></results_max10></queryTransactionResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            transactionTypeWithReportGroup response = (transactionTypeWithReportGroup)litle.queryTransaction(query);
            queryTransactionResponse       queryTransactionResponse = (queryTransactionResponse)response;

            Assert.NotNull(queryTransactionResponse);
            Assert.AreEqual("000", queryTransactionResponse.response);
            Assert.AreEqual(3, queryTransactionResponse.results_max10.Count);
            Assert.AreEqual("Original transaction found", queryTransactionResponse.message);
            Assert.AreEqual("000", ((authorizationResponse)queryTransactionResponse.results_max10[0]).response);
            Assert.AreEqual("Approved", ((authorizationResponse)queryTransactionResponse.results_max10[0]).message);
            Assert.AreEqual(756027696701750, ((authorizationResponse)queryTransactionResponse.results_max10[0]).litleTxnId);

            Assert.AreEqual("000", ((authorizationResponse)queryTransactionResponse.results_max10[1]).response);
            Assert.AreEqual("Approved", ((authorizationResponse)queryTransactionResponse.results_max10[1]).message);
            Assert.AreEqual(756027696701751, ((authorizationResponse)queryTransactionResponse.results_max10[1]).litleTxnId);

            Assert.AreEqual("000", ((authorizationResponse)queryTransactionResponse.results_max10[1]).response);
            Assert.AreEqual("Approved", ((authorizationResponse)queryTransactionResponse.results_max10[1]).message);
            Assert.AreEqual(756027696701751, ((authorizationResponse)queryTransactionResponse.results_max10[1]).litleTxnId);

            Assert.AreEqual("000", ((captureResponse)queryTransactionResponse.results_max10[2]).response);
            Assert.AreEqual("Deposit approved", ((captureResponse)queryTransactionResponse.results_max10[2]).message);
        }
        public void DepositReversal()
        {
            depositReversal reversal = new depositReversal();

            reversal.id          = "1";
            reversal.reportGroup = "planets";
            reversal.litleTxnId  = 123456000;
            giftCardCardType card = new giftCardCardType();

            card.type                       = methodOfPaymentTypeEnum.GC;
            card.number                     = "414100000000000000";
            card.expDate                    = "1210";
            card.pin                        = "1234";
            reversal.card                   = card;
            reversal.originalRefCode        = "123";
            reversal.originalAmount         = 123;
            reversal.originalTxnTime        = new DateTime(2017, 01, 01);
            reversal.originalSystemTraceId  = 123;
            reversal.originalSequenceNumber = "123456";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleTxnId>123456000</litleTxnId>\r\n<card>\r\n<type>GC</type>\r\n<number>414100000000000000</number>\r\n<expDate>1210</expDate>\r\n<pin>1234</pin>\r\n</card>\r\n<originalRefCode>123</originalRefCode>\r\n<originalAmount>123</originalAmount>\r\n<originalTxnTime>2017-01-01T00:00:00Z</originalTxnTime>\r\n<originalSystemTraceId>123</originalSystemTraceId>\r\n<originalSequenceNumber>123456</originalSequenceNumber>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><authReversalResponse><litleTxnId>123</litleTxnId></authReversalResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.DepositReversal(reversal);
        }
Пример #14
0
        public void TestSecondaryAmount()
        {
            var capture = new forceCapture();

            capture.amount          = 2;
            capture.secondaryAmount = 1;
            capture.orderSource     = orderSourceType.ecommerce;
            capture.reportGroup     = "Planets";

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<amount>2</amount>\r\n<secondaryAmount>1</secondaryAmount>\r\n<orderSource>ecommerce</orderSource>.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.14' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><forceCaptureResponse><litleTxnId>123</litleTxnId></forceCaptureResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.ForceCapture(capture);
        }
Пример #15
0
        public void TestSecondaryAmount()
        {
            var capture = new captureGivenAuth
            {
                amount          = 2,
                secondaryAmount = 1,
                orderSource     = orderSourceType.ecommerce,
                reportGroup     = "Planets"
            };

            var mock = new Mock <Communications>();

            mock.Setup(communications => communications.HttpPost(It.IsRegex(".*<amount>2</amount>\r\n<secondaryAmount>1</secondaryAmount>\r\n<orderSource>ecommerce</orderSource>.*", RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns("<litleOnlineResponse version='9.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><captureGivenAuthResponse><litleTxnId>123</litleTxnId></captureGivenAuthResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            _litle.setCommunication(mockedCommunication);
            _litle.CaptureGivenAuth(capture);
        }
        public void TestSimple()
        {
            cancelSubscription update = new cancelSubscription();

            update.subscriptionId = 12345;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleOnlineRequest.*?<cancelSubscription>\r\n<subscriptionId>12345</subscriptionId>\r\n</cancelSubscription>\r\n</litleOnlineRequest>.*?.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.20' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><cancelSubscriptionResponse><subscriptionId>12345</subscriptionId></cancelSubscriptionResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.CancelSubscription(update);
        }
Пример #17
0
        public void TestFraudFilterOverride()
        {
            echeckVoid echeckVoid = new echeckVoid();

            echeckVoid.litleTxnId = 123456789;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<echeckVoid.*<litleTxnId>123456789.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.13' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><echeckVoidResponse><litleTxnId>123</litleTxnId></echeckVoidResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            litle.EcheckVoid(echeckVoid);
        }
        public void TestSimple()
        {
            var update = new updateSubscription();

            update.billingDate = new DateTime(2002, 10, 9);
            var billToAddress = new contact();

            billToAddress.name   = "Greg Dake";
            billToAddress.city   = "Lowell";
            billToAddress.state  = "MA";
            billToAddress.email  = "*****@*****.**";
            update.billToAddress = billToAddress;
            var card = new cardType();

            card.number           = "4100000000000001";
            card.expDate          = "1215";
            card.type             = methodOfPaymentTypeEnum.VI;
            update.card           = card;
            update.planCode       = "abcdefg";
            update.subscriptionId = 12345;

            var mock = new Mock <Communications>(_memoryStreams);

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*<litleOnlineRequest.*?<updateSubscription>\r\n<subscriptionId>12345</subscriptionId>\r\n<planCode>abcdefg</planCode>\r\n<billToAddress>\r\n<name>Greg Dake</name>.*?</billToAddress>\r\n<card>\r\n<type>VI</type>.*?</card>\r\n<billingDate>2002-10-09</billingDate>\r\n</updateSubscription>\r\n</litleOnlineRequest>.*?.*",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.20' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><updateSubscriptionResponse ><litleTxnId>456</litleTxnId><response>000</response><message>Approved</message><responseTime>2013-09-04</responseTime><subscriptionId>12345</subscriptionId></updateSubscriptionResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            var response = litle.UpdateSubscription(update);

            Assert.AreEqual("12345", response.subscriptionId);
            Assert.AreEqual("456", response.litleTxnId);
            Assert.AreEqual("000", response.response);
            Assert.NotNull(response.responseTime);
        }
        public void TestSimple()
        {
            refundReversal refundReversal = new refundReversal();

            refundReversal.id          = "a";
            refundReversal.reportGroup = "b";
            refundReversal.litleTxnId  = "123";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleTxnId>123</litleTxnId>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.22' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><refundReversalResponse><litleTxnId>123</litleTxnId></refundReversalResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            refundReversalResponse response = litle.RefundReversal(refundReversal);

            Assert.AreEqual("123", response.litleTxnId);
        }
Пример #20
0
        public void TestNoCustomAttributes()
        {
            fraudCheck fraudCheck = new fraudCheck();
            advancedFraudChecksType advancedFraudCheck = new advancedFraudChecksType();

            fraudCheck.advancedFraudChecks           = advancedFraudCheck;
            advancedFraudCheck.threatMetrixSessionId = "123";

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<threatMetrixSessionId>123</threatMetrixSessionId>\r\n.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='10.1' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><fraudCheckResponse id='127' reportGroup='Planets' customerId=''><litleTxnId>742802348034313000</litleTxnId><response>000</response><message>Approved</message><advancedFraudResults><deviceReviewStatus>pass</deviceReviewStatus><deviceReputationScore>42</deviceReputationScore><triggeredRule>triggered_rule_default</triggeredRule></advancedFraudResults></fraudCheckResponse></litleOnlineResponse >");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            fraudCheckResponse fraudCheckResponse = litle.FraudCheck(fraudCheck);

            Assert.NotNull(fraudCheckResponse);
            Assert.AreEqual("pass", fraudCheckResponse.advancedFraudResults.deviceReviewStatus);
        }
Пример #21
0
        public void TestAuth()
        {
            authorization authorization = new authorization();

            authorization.reportGroup = "Planets";
            authorization.orderId     = "12344";
            authorization.amount      = 106;
            authorization.orderSource = orderSourceType.ecommerce;
            cardType card = new cardType();

            card.type          = methodOfPaymentTypeEnum.VI;
            card.number        = "4100000000000002";
            card.expDate       = "1210";
            authorization.card = card;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<litleOnlineRequest.*<authorization.*<card>.*<number>4100000000000002</number>.*</card>.*</authorization>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><authorizationResponse><litleTxnId>123</litleTxnId></authorizationResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            authorizationResponse authorize = litle.Authorize(authorization);

            Assert.AreEqual(123, authorize.litleTxnId);
        }
        public void TestFraudFilterOverride()
        {
            authorization auth = new authorization();

            auth.orderId             = "12344";
            auth.amount              = 2;
            auth.orderSource         = orderSourceType.ecommerce;
            auth.reportGroup         = "Planets";
            auth.fraudFilterOverride = true;

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*<fraudFilterOverride>true</fraudFilterOverride>.*", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<litleOnlineResponse version='8.10' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><authorizationResponse><litleTxnId>123</litleTxnId></authorizationResponse></litleOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            authorizationResponse authorizationResponse = litle.Authorize(auth);

            Assert.NotNull(authorizationResponse);
            Assert.AreEqual(123, authorizationResponse.litleTxnId);
        }