riainvoice/vendor_old/omnipay/common/tests/Omnipay/Common/HelperTest.php
2021-10-01 23:56:38 +05:30

138 lines
4.0 KiB
PHP

<?php
namespace Omnipay\Common;
use Mockery as m;
use Omnipay\Tests\TestCase;
class HelperTest extends TestCase
{
public function testCamelCase()
{
$result = Helper::camelCase('test_case');
$this->assertEquals('testCase', $result);
}
public function testCamelCaseAlreadyCorrect()
{
$result = Helper::camelCase('testCase');
$this->assertEquals('testCase', $result);
}
public function testValidateLuhnValid()
{
$result = Helper::validateLuhn('4111111111111111');
$this->assertTrue($result);
}
public function testValidateLuhnInvalid()
{
$result = Helper::validateLuhn('4111111111111110');
$this->assertFalse($result);
}
public function testValidateLuhnNull()
{
$result = Helper::validateLuhn(null);
$this->assertTrue($result);
}
public function testInitializeIgnoresNull()
{
$target = m::mock();
Helper::initialize($target, null);
}
public function testInitializeIgnoresString()
{
$target = m::mock();
Helper::initialize($target, 'invalid');
}
public function testInitializeCallsSetters()
{
$target = m::mock('\Omnipay\Common\CreditCard');
$target->shouldReceive('setName')->once()->with('adrian');
$target->shouldReceive('setNumber')->once()->with('1234');
Helper::initialize($target, array('name' => 'adrian', 'number' => '1234'));
}
public function testInitializeIgnoresInvalidParameters()
{
$target = m::mock('\Omnipay\Common\CreditCard');
$target->shouldReceive('setName')->once()->with('adrian');
Helper::initialize($target, array('name' => 'adrian', 'extra' => 'invalid'));
}
public function testGetGatewayShortNameSimple()
{
$shortName = Helper::getGatewayShortName('Omnipay\\Stripe\\Gateway');
$this->assertSame('Stripe', $shortName);
}
public function testGetGatewayShortNameSimpleLeadingSlash()
{
$shortName = Helper::getGatewayShortName('\\Omnipay\\Stripe\\Gateway');
$this->assertSame('Stripe', $shortName);
}
public function testGetGatewayShortNameUnderscore()
{
$shortName = Helper::getGatewayShortName('Omnipay\\PayPal\\ExpressGateway');
$this->assertSame('PayPal_Express', $shortName);
}
public function testGetGatewayShortNameUnderscoreLeadingSlash()
{
$shortName = Helper::getGatewayShortName('\\Omnipay\\PayPal\\ExpressGateway');
$this->assertSame('PayPal_Express', $shortName);
}
public function testGetGatewayShortNameCustomGateway()
{
$shortName = Helper::getGatewayShortName('\\Custom\\Gateway');
$this->assertSame('\\Custom\\Gateway', $shortName);
}
/**
* Type with namespace should simply be returned as is
*/
public function testGetGatewayClassNameExistingNamespace()
{
$class = Helper::getGatewayClassName('\\Custom\\Gateway');
$this->assertEquals('\\Custom\\Gateway', $class);
}
/**
* Type with namespace marker should be left intact, even if it contains an underscore
*/
public function testGetGatewayClassNameExistingNamespaceUnderscore()
{
$class = Helper::getGatewayClassName('\\Custom_Gateway');
$this->assertEquals('\\Custom_Gateway', $class);
}
public function testGetGatewayClassNameSimple()
{
$class = Helper::getGatewayClassName('Stripe');
$this->assertEquals('\\Omnipay\\Stripe\\Gateway', $class);
}
public function testGetGatewayClassNamePartialNamespace()
{
$class = Helper::getGatewayClassName('PayPal\\Express');
$this->assertEquals('\\Omnipay\\PayPal\\ExpressGateway', $class);
}
/**
* Underscored types should be resolved in a PSR-0 fashion
*/
public function testGetGatewayClassNameUnderscoreNamespace()
{
$class = Helper::getGatewayClassName('PayPal_Express');
$this->assertEquals('\\Omnipay\\PayPal\\ExpressGateway', $class);
}
}