public void SimpleBalanceInquiry()
        {
            var transaction = new balanceInquiry
            {
                id          = "1",
                orderId     = "12344",
                orderSource = orderSourceType.ecommerce,
                card        = new giftCardCardType
                {
                    type              = methodOfPaymentTypeEnum.GC,
                    number            = "414100000000000000",
                    cardValidationNum = "123",
                    expDate           = "1215",
                }
            };

            var test = new BaseCnpOnlineTest();

            test.SetExceptionExpected(typeof(InvalidVersionException), null, "8.21");
            test.SetExpectedPopulated("id", transaction.id, null, null);
            test.SetExpectedPopulated("cnpTxnId", "12.0", null);
            test.SetExpectedPopulated("response", "000", "8.21", null);
            test.SetExpectedPopulated("responseTime", "8.21", null);
            test.SetExpectedPopulated("message", "Approved", "8.21", null);
            test.SetExpectedPopulated("balanceInquiryResponse", "8.21", null);
            test.SetExpectedPopulated("litleTxnId", "8.21", "12.0");
            test.RunCnpTestThreaded <balanceInquiryResponse>(transaction);
        }
        public void testBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry();

            balanceInquiry.orderId     = "2";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new cardType();

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

            mock.Setup(
                Communications =>
                Communications.HttpPost(
                    It.IsRegex(
                        ".*?<litleOnlineRequest.*?<balanceInquiry.*?<orderId>2</orderId>.*?</balanceInquiry>.*?",
                        RegexOptions.Singleline), It.IsAny <Dictionary <string, string> >()))
            .Returns(
                "<litleOnlineResponse version='8.21' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><balanceInquiryResponse><litleTxnId>123</litleTxnId></balanceInquiryResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;

            litle.setCommunication(mockedCommunication);
            var balanceInquiryResponse = litle.BalanceInquiry(balanceInquiry);

            Assert.AreEqual("123", balanceInquiryResponse.litleTxnId);
        }
Exemple #3
0
        public balanceInquiryResponse BalanceInquiry(balanceInquiry balanceInquiry)
        {
            litleOnlineRequest request = createLitleOnlineRequest();

            request.balanceInquiry = balanceInquiry;

            litleOnlineResponse    response = sendToLitle(request);
            balanceInquiryResponse balanceInquiryResponse = response.balanceInquiryResponse;

            return(balanceInquiryResponse);
        }
Exemple #4
0
 public void addBalanceInquiry(balanceInquiry balanceInquiry)
 {
     if (numAccountUpdates == 0)
     {
         numBalanceInquiries++;
         tempBatchFilePath = saveElement(litleFile, litleTime, tempBatchFilePath, balanceInquiry);
     }
     else
     {
         throw new LitleOnlineException(accountUpdateErrorMessage);
     }
 }
Exemple #5
0
        public void TestBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry();

            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new giftCardCardType();

            batchRequest.addBalanceInquiry(balanceInquiry);

            Assert.AreEqual(1, batchRequest.getNumBalanceInquiries());

            mockCnpFile.Verify(cnpFile => cnpFile.createRandomFile(It.IsAny <string>(), It.IsAny <string>(), It.IsAny <string>(), mockCnpTime.Object));
            mockCnpFile.Verify(cnpFile => cnpFile.AppendLineToFile(mockFilePath, balanceInquiry.Serialize()));
        }
Exemple #6
0
        public void testBalanceInquiry()
        {
            balanceInquiry balanceInquiry = new balanceInquiry();

            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new cardType();

            batchRequest.addBalanceInquiry(balanceInquiry);

            Assert.AreEqual(1, batchRequest.getNumBalanceInquiries());

            mockLitleFile.Verify(litleFile => litleFile.createRandomFile(It.IsAny <String>(), It.IsAny <String>(), It.IsAny <String>(), mockLitleTime.Object));
            mockLitleFile.Verify(litleFile => litleFile.AppendLineToFile(mockFilePath, balanceInquiry.Serialize()));
        }
Exemple #7
0
        public void TestBalanceInquiry()
        {
            balanceInquiry balanceInquiry = new balanceInquiry();

            balanceInquiry.orderId     = "2";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new giftCardCardType();

            var mock = new Mock <Communications>();

            mock.Setup(Communications => Communications.HttpPost(It.IsRegex(".*?<cnpOnlineRequest.*?<balanceInquiry.*?<orderId>2</orderId>.*?</balanceInquiry>.*?", RegexOptions.Singleline), It.IsAny <Dictionary <String, String> >()))
            .Returns("<cnpOnlineResponse version='8.21' response='0' message='Valid Format' xmlns='http://www.vantivcnp.com/schema'><balanceInquiryResponse><cnpTxnId>123</cnpTxnId></balanceInquiryResponse></cnpOnlineResponse>");

            Communications mockedCommunication = mock.Object;

            cnp.SetCommunication(mockedCommunication);
            balanceInquiryResponse balanceInquiryResponse = cnp.BalanceInquiry(balanceInquiry);

            Assert.AreEqual(123, balanceInquiryResponse.cnpTxnId);
        }
Exemple #8
0
        public void SimpleBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry
            {
                id          = "1",
                reportGroup = "Planets",
                orderId     = "12344",
                orderSource = orderSourceType.ecommerce,
                card        = new giftCardCardType
                {
                    type              = methodOfPaymentTypeEnum.GC,
                    number            = "414100000000000000",
                    cardValidationNum = "123",
                    expDate           = "1215",
                }
            };

            var response = _cnp.BalanceInquiry(balanceInquiry);

            Assert.AreEqual("000", response.response);
        }
Exemple #9
0
        public void TestBalanceInquiryAsync()
        {
            var balanceInquiry = new balanceInquiry
            {
                id          = "1",
                reportGroup = "Planets",
                orderId     = "12344",
                orderSource = orderSourceType.ecommerce,
                card        = new giftCardCardType
                {
                    type              = methodOfPaymentTypeEnum.GC,
                    number            = "414100000000000000",
                    cardValidationNum = "123",
                    expDate           = "1215",
                }
            };

            CancellationToken cancellationToken = new CancellationToken(false);
            var response = _cnp.BalanceInquiryAsync(balanceInquiry, cancellationToken);

            Assert.AreEqual("000", response.Result.response);
        }
        public void testBalanceInquiry_OnlyRequired()
        {
            balanceInquiry balanceInquiry = new balanceInquiry();

            balanceInquiry.orderId     = "12345";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new giftCardCardType();
            balanceInquiry.id          = "theId";
            balanceInquiry.reportGroup = "theReportGroup";

            String actual   = balanceInquiry.Serialize();
            String expected = @"
<balanceInquiry id=""theId"" reportGroup=""theReportGroup"">
<orderId>12345</orderId>
<orderSource>ecommerce</orderSource>
<card>
<type>MC</type>
</card>
</balanceInquiry>";

            Assert.AreEqual(Regex.Replace(expected, @"\s+", String.Empty), Regex.Replace(actual, @"\s+", String.Empty));
        }
Exemple #11
0
        public void testBalanceInquiry_Full()
        {
            balanceInquiry balanceInquiry = new balanceInquiry();

            balanceInquiry.orderId     = "12345";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card        = new cardType();
            balanceInquiry.id          = "theId";
            balanceInquiry.reportGroup = "theReportGroup";

            String actual   = balanceInquiry.Serialize();
            String expected = @"
<balanceInquiry id=""theId"" reportGroup=""theReportGroup"">
<orderId>12345</orderId>
<orderSource>ecommerce</orderSource>
<card>
<type>MC</type>
</card>
</balanceInquiry>";

            Assert.AreEqual(expected, actual);
        }
 public balanceInquiryResponse BalanceInquiry(balanceInquiry transaction)
 {
     return(this.SendTransaction <balanceInquiryResponse>(transaction));
 }
Exemple #13
0
 public Task <balanceInquiryResponse> BalanceInquiryAsync(balanceInquiry balanceInquiry, CancellationToken cancellationToken)
 {
     return(SendRequestAsync(response => response.balanceInquiryResponse, balanceInquiry, cancellationToken));
 }
Exemple #14
0
 public balanceInquiryResponse BalanceInquiry(balanceInquiry balanceInquiry)
 {
     return(SendRequest(response => response.balanceInquiryResponse, balanceInquiry));
 }
        public void testBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry();
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card = new cardType();

            batchRequest.addBalanceInquiry(balanceInquiry);

            Assert.AreEqual(1, batchRequest.getNumBalanceInquiries());

            mockLitleFile.Verify(
                litleFile =>
                    litleFile.createRandomFile(It.IsAny<string>(), It.IsAny<string>(), It.IsAny<string>(),
                        mockLitleTime.Object));
            mockLitleFile.Verify(litleFile => litleFile.AppendLineToFile(mockFilePath, balanceInquiry.Serialize()));
        }
        public void testBalanceInquiry_Full()
        {
            var balanceInquiry = new balanceInquiry();
            balanceInquiry.orderId = "12345";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card = new cardType();
            balanceInquiry.id = "theId";
            balanceInquiry.reportGroup = "theReportGroup";

            var actual = balanceInquiry.Serialize();
            var expected = @"
            <balanceInquiry id=""theId"" reportGroup=""theReportGroup"">
            <orderId>12345</orderId>
            <orderSource>ecommerce</orderSource>
            <card>
            <type>MC</type>
            </card>
            </balanceInquiry>";
            Assert.AreEqual(expected, actual);
        }
        public void testBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry();
            balanceInquiry.orderId = "2";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card = new cardType();

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

            mock.Setup(
                Communications =>
                    Communications.HttpPost(
                        It.IsRegex(
                            ".*?<litleOnlineRequest.*?<balanceInquiry.*?<orderId>2</orderId>.*?</balanceInquiry>.*?",
                            RegexOptions.Singleline), It.IsAny<Dictionary<string, string>>()))
                .Returns(
                    "<litleOnlineResponse version='8.21' response='0' message='Valid Format' xmlns='http://www.litle.com/schema'><balanceInquiryResponse><litleTxnId>123</litleTxnId></balanceInquiryResponse></litleOnlineResponse>");

            var mockedCommunication = mock.Object;
            litle.setCommunication(mockedCommunication);
            var balanceInquiryResponse = litle.BalanceInquiry(balanceInquiry);
            Assert.AreEqual("123", balanceInquiryResponse.litleTxnId);
        }
        public void testBalanceInquiry()
        {
            var balanceInquiry = new balanceInquiry();
            balanceInquiry.orderId = "theOrderId";
            balanceInquiry.orderSource = orderSourceType.ecommerce;
            balanceInquiry.card = new cardType();

            var mockLitleResponse = new Mock<litleResponse>();
            var mockLitleXmlSerializer = new Mock<litleXmlSerializer>();

            mockXmlReader.SetupSequence(XmlReader => XmlReader.ReadOuterXml())
                .Returns(
                    "<balanceInquiryResponse xmlns=\"http://www.litle.com/schema\"><litleTxnId>123</litleTxnId></balanceInquiryResponse>")
                .Returns(
                    "<balanceInquiryResponse xmlns=\"http://www.litle.com/schema\"><litleTxnId>124</litleTxnId></balanceInquiryResponse>");

            var mockLitleBatchResponse = new batchResponse();
            mockLitleBatchResponse.setBalanceInquiryResponseReader(mockXmlReader.Object);

            mockLitleResponse.Setup(litleResponse => litleResponse.nextBatchResponse()).Returns(mockLitleBatchResponse);
            var mockedLitleResponse = mockLitleResponse.Object;

            mockLitleXmlSerializer.Setup(
                litleXmlSerializer =>
                    litleXmlSerializer.DeserializeObjectFromString(It.IsAny<string>()))
                .Returns(mockedLitleResponse);

            var mockedCommunication = mockCommunications.Object;
            litle.setCommunication(mockedCommunication);

            var mockedLitleXmlSerializer = mockLitleXmlSerializer.Object;
            litle.setLitleXmlSerializer(mockedLitleXmlSerializer);

            var mockedLitleFile = mockLitleFile.Object;
            litle.setLitleFile(mockedLitleFile);

            litle.setLitleTime(mockLitleTime.Object);

            var litleBatchRequest = new batchRequest(_mockCache.Object);
            litleBatchRequest.setLitleFile(mockedLitleFile);
            litleBatchRequest.setLitleTime(mockLitleTime.Object);
            litleBatchRequest.addBalanceInquiry(balanceInquiry);
            litleBatchRequest.addBalanceInquiry(balanceInquiry);
            litle.addBatch(litleBatchRequest);

            var batchFileName = litle.sendToLitle();
            var actualLitleResponse = litle.receiveFromLitle(batchFileName);
            var actualLitleBatchResponse = actualLitleResponse.nextBatchResponse();

            Assert.AreSame(mockLitleBatchResponse, actualLitleBatchResponse);
            Assert.AreEqual("123", actualLitleBatchResponse.nextBalanceInquiryResponse().litleTxnId);
            Assert.AreEqual("124", actualLitleBatchResponse.nextBalanceInquiryResponse().litleTxnId);
            Assert.IsNull(actualLitleBatchResponse.nextBalanceInquiryResponse());

            mockCommunications.Verify(
                Communications =>
                    Communications.FtpDropOff(It.IsAny<string>(), mockFileName, It.IsAny<Dictionary<string, string>>()));
            mockCommunications.Verify(
                Communications =>
                    Communications.FtpPickUp(It.IsAny<string>(), It.IsAny<Dictionary<string, string>>(), mockFileName));
        }