riainvoice/vendor_old/omnipay/authorizenet/tests/SIMGatewayTest.php
2021-10-01 23:56:38 +05:30

103 lines
3.0 KiB
PHP

<?php
namespace Omnipay\AuthorizeNet;
use Omnipay\Tests\GatewayTestCase;
class SIMGatewayTest extends GatewayTestCase
{
/** @var SIMGateway */
protected $gateway;
public function setUp()
{
parent::setUp();
$this->gateway = new SIMGateway($this->getHttpClient(), $this->getHttpRequest());
$this->gateway->setApiLoginId('example');
$this->gateway->setHashSecret('elpmaxe');
$this->options = array(
'amount' => '10.00',
'transactionId' => '99',
'returnUrl' => 'https://www.example.com/return',
);
}
public function testLiveEndpoint()
{
$this->assertEquals(
'https://secure2.authorize.net/gateway/transact.dll',
$this->gateway->getLiveEndpoint()
);
}
public function testDeveloperEndpoint()
{
$this->assertEquals(
'https://test.authorize.net/gateway/transact.dll',
$this->gateway->getDeveloperEndpoint()
);
}
public function testAuthorize()
{
$response = $this->gateway->authorize($this->options)->send();
$this->assertFalse($response->isSuccessful());
$this->assertTrue($response->isRedirect());
$this->assertNotEmpty($response->getRedirectUrl());
$redirectData = $response->getRedirectData();
$this->assertSame('https://www.example.com/return', $redirectData['x_relay_url']);
}
public function testCompleteAuthorize()
{
$this->getHttpRequest()->request->replace(
array(
'x_response_code' => '1',
'x_trans_id' => '12345',
'x_amount' => '10.00',
'x_MD5_Hash' => md5('elpmaxe' . 'example' . '12345' . '10.00'),
)
);
$response = $this->gateway->completeAuthorize($this->options)->send();
$this->assertTrue($response->isSuccessful());
$this->assertSame('12345', $response->getTransactionReference());
$this->assertNull($response->getMessage());
}
public function testPurchase()
{
$response = $this->gateway->purchase($this->options)->send();
$this->assertFalse($response->isSuccessful());
$this->assertTrue($response->isRedirect());
$this->assertNotEmpty($response->getRedirectUrl());
$redirectData = $response->getRedirectData();
$this->assertSame('https://www.example.com/return', $redirectData['x_relay_url']);
}
public function testCompletePurchase()
{
$this->getHttpRequest()->request->replace(
array(
'x_response_code' => '1',
'x_trans_id' => '12345',
'x_amount' => '10.00',
'x_MD5_Hash' => md5('elpmaxe' . 'example' . '12345' . '10.00'),
)
);
$response = $this->gateway->completePurchase($this->options)->send();
$this->assertTrue($response->isSuccessful());
$this->assertSame('12345', $response->getTransactionReference());
$this->assertNull($response->getMessage());
}
}