public void DataCash_Response_Contains_Payment_Id() { var http = new Mock<IHttpPostTransport>(); var dataCashReference = Guid.NewGuid().ToString(); http .Setup(h => h.Post(It.IsAny<Uri>(), It.IsAny<string>())) .Returns(this.MakeXmlResponse(1, "Success", dataCashReference)); var gw = new DataCashPaymentGateway(http.Object, CLIENT_ID, PASSWORD, GATEWAY_URI); var response = gw.Purchase(TestData.MerchantReference, TestData.Amount, TestData.Card); Assert.Equal(dataCashReference, response.PaymentId); }
private void Verify_Purchase_Xml_Element(string xpath, string expectedValue) { var http = new Mock<IHttpPostTransport>(); http .Setup(h => h.Post(It.IsAny<Uri>(), It.IsAny<string>())) .Callback((Uri uri, string postData) => { var xml = XDocument.Parse(postData); var element = xml.XPathEvaluate(xpath); Assert.NotNull(element); if (element is XElement) { Assert.Equal(expectedValue, ((XElement) element).Value); } else if (element is XAttribute) { Assert.Equal(expectedValue, ((XAttribute) element).Value); } }).Returns(this.MakeXmlResponse(1, "Success result from HTTP mock")); var gw = new DataCashPaymentGateway(http.Object, CLIENT_ID, PASSWORD, GATEWAY_URI); gw.Purchase(TestData.MerchantReference, TestData.Amount, TestData.Card); http.VerifyAll(); }
private PaymentResponse Get_Mock_DataCash_Response(int dataCashReturnCode, string dataCashReason) { var http = new Mock<IHttpPostTransport>(); http .Setup(h => h.Post(It.IsAny<Uri>(), It.IsAny<string>())) .Returns(this.MakeXmlResponse(dataCashReturnCode, dataCashReason)); var gw = new DataCashPaymentGateway(http.Object, CLIENT_ID, PASSWORD, GATEWAY_URI); return (gw.Purchase(TestData.MerchantReference, TestData.Amount, TestData.Card)); }