Inheritance: ISecurePayGateway
        public void Fixture()
        {
            _fakeCommunicationMechanism = Substitute.For<ICommunicate>();

            _gateway = new SecurePayGateway(_fakeCommunicationMechanism, "ABC0001", "abc123", ApiPeriodic);

            _card = new SecurePayCardInfo { Number = "4444333322221111", ExpiryMonth = 10, ExpiryYear = 15 };
        }
        public void SecurePayGateway_OneOffPayemt()
        {
            //NOTE: usage of separate instance of SecurePayGateway() with 'ApiPayment' and NOT 'ApiPeriodic'
            var oneOffPaymentGateway = new SecurePayGateway(new SecurePayWebCommunication(), "ABC0001", "abc123", ApiPayment);

            var p = new SecurePayPayment { Amount = ChargeAmount1, Currency = "AUD" };

            var oneOffPayment = oneOffPaymentGateway.SinglePaymentXml(ValidCard, p, "OneOffInc");
            DebugDisplay(oneOffPayment);

            var r = oneOffPaymentGateway.SendMessage(oneOffPayment, "unit test");

            // Assert
            Console.WriteLine("Response:");
            Console.WriteLine(r.Print());

            Assert.IsNotNull(r);
            Assert.That(r.Status.StatusDescription, Is.Not.ContainsSubstring("Unable to connect to server"));
            Assert.That(r.Status.StatusDescription, Is.EqualTo("Normal"));
            Assert.That(r.Status.StatusCode, Is.EqualTo(0));
        }
        public void Fixture()
        {
            _gateway = new SecurePayGateway(new SecurePayWebCommunication(), "ABC0001", "abc123", ApiPeriodic);

            _card = new SecurePayCardInfo { Number = "4444333322221111", ExpiryMonth = 10, ExpiryYear = 15 };
        }
 public void Fixture()
 {
     _gateway = new SecurePayGateway(new SecurePayWebCommunication(), "ABC0001","abc123", ApiPeriodic);
     
     SetupCardsAndChargeAmounts();
 }