public function testCreateCardLocallyValidatesCardsDuringNonTestMode() { $this->card->setNumber('1'); $this->gateway->setTestMode(false); $this->setMockHttpResponse('CreateCardSuccess.txt'); $transaction = $this->gateway->createCard(array('card' => $this->card)); $this->setExpectedException('\\Omnipay\\Common\\Exception\\InvalidCreditCardException'); $transaction->send(); }
public function setUp() { parent::setUp(); $bankAccount = new BankAccount(); $bankAccount->setAccountNumber("12345678"); $bankAccount->setRoutingNumber("112200439"); $bankAccount->setBankName("Mikey National Bank"); $bankAccount->setBankAccountType(BankAccount::ACCOUNT_TYPE_CHECKING); $bankAccount->setBillingFirstName("Mikey"); $bankAccount->setBillingLastName("DABLname"); $bankAccount->setName("Mikey DABLname"); $bankAccount->setBillingAddress1("15505 Pennsylvania Ave."); $bankAccount->setBillingCity("Washington DC"); $bankAccount->setBillingName("FED-Payor"); $bankAccount->setBillingPostcode("20003"); $bankAccount->setBillingState("CA"); $bankAccount->setBillingCountry('USA'); $bankAccount->setBillingPhone('5555555555'); $bankAccount->setCompany("DAB2LLC"); $bankAccount->setEmail('*****@*****.**'); $creditCard = new CreditCard(); $creditCard->setNumber('4111111111111111'); $creditCard->setCvv("432"); $creditCard->setExpiryMonth('12'); $creditCard->setExpiryYear('2025'); $creditCard->setEmail('*****@*****.**'); $creditCard->setName("Mikey DABLname"); $creditCard->setBillingAddress1("15505 Pennsylvania Ave."); $creditCard->setBillingCity("Washington DC"); $creditCard->setBillingFirstName("FED-Payor"); $creditCard->setBillingLastName("DABLname"); $creditCard->setBillingPostcode("20003"); $creditCard->setBillingState("DC"); $creditCard->setBillingCountry("USA"); $this->gateway = new CybersourceGateway($this->getHttpClient(), $this->getHttpRequest()); $this->gateway->setTestMode(true); $defaultOptions = array('merchantId' => '', 'username' => '', 'transactionKey' => ''); if ($defaultOptions['merchantId'] != '' && $defaultOptions['username'] != '' && $defaultOptions['transactionKey'] != '' && $defaultOptions['password'] != '') { $purchaseOptions = array('amount' => '12.00', 'card' => $creditCard, 'merchantReferenceCode' => uniqid()); /** @var \Omnipay\Cybersource\Message\PurchaseRequest $request */ $request = $this->gateway->purchase(array_merge($defaultOptions, $purchaseOptions)); /** @var \Omnipay\Cybersource\Message\CybersourceResponse $response */ $response = $request->send(); $this->assertEquals(true, $response->isSuccessful()); $purchaseOptions = array('amount' => '12.00', 'bankAccount' => $bankAccount, 'merchantReferenceCode' => uniqid()); /** @var \Omnipay\Cybersource\Message\PurchaseRequest $request */ $request = $this->gateway->purchase(array_merge($defaultOptions, $purchaseOptions)); $response = $request->send(); $this->assertEquals(true, $response->isSuccessful()); $reportOptions = array('reportDate' => new \DateTime('12/17/2014')); /** @var \Omnipay\Cybersource\Message\TransactionDetailReportRequest $request */ $request = $this->gateway->transactionDetailReport(array_merge($defaultOptions, $reportOptions)); /** @var \Omnipay\Cybersource\Message\TransactionDetailReportResponse $response */ $response = $request->send(); $this->assertEquals(true, $response->isSuccessful()); } }
/** * @param Market_OrderModel $order * @param Market_PaymentFormModel $paymentForm * * @return CreditCard */ private function createCard(Market_OrderModel $order, Market_PaymentFormModel $paymentForm) { $card = new CreditCard(); $card->setFirstName($paymentForm->firstName); $card->setLastName($paymentForm->lastName); $card->setNumber($paymentForm->number); $card->setExpiryMonth($paymentForm->month); $card->setExpiryYear($paymentForm->year); $card->setCvv($paymentForm->cvv); if ($order->billingAddressId) { $billingAddress = $order->billingAddress; $card->setBillingAddress1($billingAddress->address1); $card->setBillingAddress2($billingAddress->address2); $card->setBillingCity($billingAddress->city); $card->setBillingPostcode($billingAddress->zipCode); $card->setBillingState($billingAddress->getStateText()); $card->setBillingCountry($billingAddress->getCountryText()); $card->setBillingPhone($billingAddress->phone); } if ($order->shippingAddressId) { $shippingAddress = $order->shippingAddress; $card->setShippingAddress1($shippingAddress->address1); $card->setShippingAddress2($shippingAddress->address2); $card->setShippingCity($shippingAddress->city); $card->setShippingPostcode($shippingAddress->zipCode); $card->setShippingState($shippingAddress->getStateText()); $card->setShippingCountry($shippingAddress->getCountryText()); $card->setShippingPhone($shippingAddress->phone); $card->setCompany($shippingAddress->company); } $card->setEmail($order->email); return $card; }
/** * @expectedException Omnipay\Common\Exception\InvalidCreditCardException * @expectedExceptionMessage Card number should have 12 to 19 digits */ public function testInvalidShortCard() { $this->card->setNumber('4440'); $this->card->validate(); }