public function testCreateCreditCard_Success() { $expected = new CreditCard(); $expected->setCreditCardBrand(CreditCardBrandEnum::MASTERCARD); $expected->setCreditCardNumber("5555444433332222"); $expected->setExpMonth(12); $expected->setExpYear(30); $expected->setHolderName("gateway"); $expected->setSecurityCode("999"); $creditCard = CreditCardHelper::createCreditCard(" 5555 4444 3333 2222 ", " gateway ", " 12/30 ", " 999 "); $this->assertEquals($expected, $creditCard); $expected->setExpYear(2030); $creditCard = CreditCardHelper::createCreditCard(" 5555 4444 3333 2222 ", " gateway ", " 12/2030 ", " 999 "); $this->assertEquals($expected, $creditCard); }
<?php require_once dirname(__FILE__) . '/../init.php'; try { // Define a url utilizada \Gateway\ApiClient::setBaseUrl("url_here"); // Define a chave da loja \Gateway\ApiClient::setMerchantKey("merchant key"); // Cria objeto requisição $createSaleRequest = new \Gateway\One\DataContract\Request\CreateSaleRequest(); // Cria objeto do cartão de crédito $creditCard = \Gateway\One\Helper\CreditCardHelper::createCreditCard("5555 4444 3333 2222", "gateway", "12/2030", "999"); // Define dados do pedido $createSaleRequest->addCreditCardTransaction()->setPaymentMethodCode(\Gateway\One\DataContract\Enum\PaymentMethodEnum::SIMULATOR)->setCreditCardOperation(\Gateway\One\DataContract\Enum\CreditCardOperationEnum::AUTH_ONLY)->setAmountInCents(1098)->setCreditCard($creditCard); //Cria um objeto ApiClient $apiClient = new Gateway\ApiClient(); // Faz a chamada para criação $response = $apiClient->createSale($createSaleRequest); // Mapeia resposta $httpStatusCode = $response->isSuccess() ? 201 : 401; $response = array("message" => $response->getData()->CreditCardTransactionResultCollection[0]->AcquirerMessage, "data" => $response->getData()); } catch (\Gateway\One\DataContract\Report\CreditCardError $error) { $httpStatusCode = 400; $response = array("message" => $error->getMessage()); } catch (\Gateway\One\DataContract\Report\ApiError $error) { $httpStatusCode = $error->errorCollection->ErrorItemCollection[0]->ErrorCode; $response = array("message" => $error->errorCollection->ErrorItemCollection[0]->Description); } catch (\Exception $ex) { $httpStatusCode = 500; $response = array("message" => "Ocorreu um erro inesperado."); } finally {
/** * @dataProvider eloCreditCardNumbers */ public function testCreateEloCreditCard_Success($creditCardNumber) { $creditCard = CreditCardHelper::createCreditCard($creditCardNumber, "FOO BAR", "10/2999", "123"); $this->assertEquals($creditCard->getCreditCardBrand(), CreditCardBrandEnum::ELO); }