Skip to content

Commit

Permalink
update tests and test cases to php 8
Browse files Browse the repository at this point in the history
  • Loading branch information
has.well committed Nov 14, 2020
1 parent 9f6d96a commit e92adf8
Show file tree
Hide file tree
Showing 16 changed files with 135 additions and 98 deletions.
3 changes: 2 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
.idea
composer.lock
composer.phar
/vendor/
/vendor/
*.cache
2 changes: 1 addition & 1 deletion .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -15,5 +15,5 @@ branches:
only:
master
before_install:
- composer install
- travis_retry composer install --no-interaction --prefer-source
script: vendor/bin/phpunit --bootstrap vendor/autoload.php tests
3 changes: 2 additions & 1 deletion autoload.php
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@
require(dirname(__FILE__) . '/lib/Api/Order/Atol.php');
require(dirname(__FILE__) . '/lib/Api/Order/Capture.php');
require(dirname(__FILE__) . '/lib/Api/Order/Reverse.php');
require(dirname(__FILE__) . '/lib/Api/Order/Settlements.php');
require(dirname(__FILE__) . '/lib/Api/Order/Status.php');
require(dirname(__FILE__) . '/lib/Api/Order/TransactionList.php');
require(dirname(__FILE__) . '/lib/Api/P2pcredit/Credit.php');
Expand Down Expand Up @@ -51,4 +52,4 @@
require(dirname(__FILE__) . '/lib/Response/PcidssResponse.php');

/** Result(callback) classes */
require(dirname(__FILE__) . '/lib/Result/Result.php');
require(dirname(__FILE__) . '/lib/Result/Result.php');
2 changes: 1 addition & 1 deletion composer.json
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,7 @@
"ext-json": "*"
},
"require-dev": {
"phpunit/phpunit": "~4.8"
"phpunit/phpunit": "~5|~8|~9"
},
"autoload": {
"psr-4": {
Expand Down
2 changes: 1 addition & 1 deletion examples/Order/capture.php
Original file line number Diff line number Diff line change
Expand Up @@ -74,4 +74,4 @@
<?php
} catch (\Exception $e) {
echo "Fail: " . $e->getMessage();
}
}
2 changes: 1 addition & 1 deletion examples/configuration.php
Original file line number Diff line number Diff line change
Expand Up @@ -9,4 +9,4 @@
define('SDK_ROOTPATH', __DIR__);
require_once SDK_ROOTPATH . '/../vendor/autoload.php';
\Cloudipsp\Configuration::setMerchantId(1396424);
\Cloudipsp\Configuration::setSecretKey('test');
\Cloudipsp\Configuration::setSecretKey('test');
6 changes: 3 additions & 3 deletions lib/HttpClient/HttpCurl.php
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@ class HttpCurl implements ClientInterface
* @param string $url
* @param array $headers
* @param array $params
* @return array
* @return string
* @throws Exception\HttpClientException
*/
public function request($method, $url, $headers = [], $params)
public function request($method, $url, $headers = [], $params = [])
{
$method = strtoupper($method);
if (!$this->curlEnabled())
Expand Down Expand Up @@ -60,4 +60,4 @@ private function curlEnabled()
{
return function_exists('curl_init');
}
}
}
48 changes: 35 additions & 13 deletions tests/CheckoutTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -34,11 +34,14 @@ class CheckoutTest extends TestCase
)
];

/**
* Setup config
*/
private function setTestConfig()
{
\Cloudipsp\Configuration::setMerchantId($this->mid);
\Cloudipsp\Configuration::setSecretKey($this->secret_key);
\Cloudipsp\Configuration::setApiVersion('1.0');
Configuration::setMerchantId($this->mid);
Configuration::setSecretKey($this->secret_key);
Configuration::setApiVersion('1.0');
}

/**
Expand All @@ -48,8 +51,8 @@ public function testUrl()
{
$this->setTestConfig();
foreach ($this->request_types as $type) {
\Cloudipsp\Configuration::setRequestType($type);
$result = \Cloudipsp\Checkout::url($this->fullTestData)->getData();
Configuration::setRequestType($type);
$result = Checkout::url($this->fullTestData)->getData();
$this->validateCheckoutUrlResult($result);
}
}
Expand All @@ -60,11 +63,9 @@ public function testUrl()
public function testToken()
{
$this->setTestConfig();
//foreach ($this->request_types as $type) {
\Cloudipsp\Configuration::setRequestType('json');
$result = \Cloudipsp\Checkout::token($this->fullTestData)->getData();
$this->validateTokenResult($result);
// }
Configuration::setRequestType('json');
$result = Checkout::token($this->fullTestData)->getData();
$this->validateTokenResult($result);
}

/**
Expand All @@ -73,16 +74,37 @@ public function testToken()
public function testForm()
{
$this->setTestConfig();
$result = \Cloudipsp\Checkout::form($this->fullTestData);
$this->assertInternalType('string', $result, "Got a " . gettype($result) . " instead of a string");
$result = Checkout::form($this->fullTestData);
$this->assertIsMyString($result, "Got a " . gettype($result) . " instead of a string");
}

/**
* Checking correct result for token request
* @param $result
*/
private function validateTokenResult($result)
{
$this->assertNotEmpty($result['token'], 'payment_id is empty');
$this->assertInternalType('string', $result['token'], "Got a " . gettype($result['token']) . " instead of a string");
$this->assertIsMyString($result['token'], "Got a " . gettype($result['token']) . " instead of a string");
}

/**
* @param $string
* @param $message
*/
private function assertIsMyString($string, $message)
{
if (method_exists(get_parent_class($this), 'assertIsString')) {
$this->assertIsString($string, $message);
} else {
$this->assertInternalType('string', $string, $message);
}
}

/**
* Checking correct result of get checkout url
* @param $result
*/
private function validateCheckoutUrlResult($result)
{
$this->assertNotEmpty($result['checkout_url'], 'checkout_url is empty');
Expand Down
48 changes: 26 additions & 22 deletions tests/ConfigurationTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -8,64 +8,68 @@ class ConfigurationTest extends TestCase
{
public function testGetApiUrl()
{
$this->assertEquals('https://api.fondy.eu/api', \Cloudipsp\Configuration::getApiUrl());
\Cloudipsp\Configuration::setApiUrl('api.saas.com');
$this->assertEquals('https://api.fondy.eu/api', Configuration::getApiUrl());
Configuration::setApiUrl('api.saas.com');
$this->assertEquals(
'https://api.saas.com/api',
\Cloudipsp\Configuration::getApiUrl()
Configuration::getApiUrl()
);
\Cloudipsp\Configuration::setApiUrl('api.fondy.eu');
Configuration::setApiUrl('api.fondy.eu');
$this->assertEquals(
'https://api.fondy.eu/api',
\Cloudipsp\Configuration::getApiUrl()
Configuration::getApiUrl()
);
}

public function testSetApiVersion()
{
$this->assertEquals(
'1.0',
\Cloudipsp\Configuration::getApiVersion()
Configuration::getApiVersion()
);
\Cloudipsp\Configuration::setApiVersion('2.0');
Configuration::setApiVersion('2.0');
$this->assertEquals(
'2.0',
\Cloudipsp\Configuration::getApiVersion()
Configuration::getApiVersion()
);
}

public function testSetHttpClient()
{
\Cloudipsp\Configuration::setHttpClient('HttpGuzzle');
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpGuzzle', \Cloudipsp\Configuration::getHttpClient());
\Cloudipsp\Configuration::setHttpClient('HttpCurl');
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpCurl', \Cloudipsp\Configuration::getHttpClient());
$this->setExpectedException('PHPUnit_Framework_Error_Notice');
$this->assertFalse(\Cloudipsp\Configuration::setHttpClient('Unknown'));
Configuration::setHttpClient('HttpGuzzle');
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpGuzzle', Configuration::getHttpClient());
Configuration::setHttpClient('HttpCurl');
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpCurl', Configuration::getHttpClient());
if (method_exists(get_parent_class($this), 'expectNotice')){
$this->expectNotice();
} else {
$this->expectException('PHPUnit_Framework_Error_Notice');
}
$this->assertFalse(Configuration::setHttpClient('Unknown'));
}

public function testSetHttpClientClass()
{
\Cloudipsp\Configuration::setHttpClient(new \Cloudipsp\HttpClient\HttpCurl());
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpCurl', \Cloudipsp\Configuration::getHttpClient());
Configuration::setHttpClient(new HttpClient\HttpCurl());
$this->assertInstanceOf('\\Cloudipsp\\HttpClient\\HttpCurl', Configuration::getHttpClient());
}

public function testSetSecretKey()
{
\Cloudipsp\Configuration::setSecretKey('something-secret');
$this->assertEquals('something-secret', \Cloudipsp\Configuration::getSecretKey());
Configuration::setSecretKey('something-secret');
$this->assertEquals('something-secret', Configuration::getSecretKey());
}


public function testSetMerchantId()
{
\Cloudipsp\Configuration::setMerchantId(123);
$this->assertEquals(123, \Cloudipsp\Configuration::getMerchantId());
Configuration::setMerchantId(123);
$this->assertEquals(123, Configuration::getMerchantId());
}

public function testSetCreditKey()
{
\Cloudipsp\Configuration::setCreditKey('something-secret');
$this->assertEquals('something-secret', \Cloudipsp\Configuration::getCreditKey());
Configuration::setCreditKey('something-secret');
$this->assertEquals('something-secret', Configuration::getCreditKey());
}
}
38 changes: 20 additions & 18 deletions tests/OrderTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -37,9 +37,9 @@ public function __construct($name = null, array $data = array(), $dataName = '')

private function setTestConfig()
{
\Cloudipsp\Configuration::setMerchantId($this->mid);
\Cloudipsp\Configuration::setSecretKey($this->secret_key);
\Cloudipsp\Configuration::setApiVersion('1.0');
Configuration::setMerchantId($this->mid);
Configuration::setSecretKey($this->secret_key);
Configuration::setApiVersion('1.0');
}

/**
Expand All @@ -48,7 +48,7 @@ private function setTestConfig()
public function testStatus()
{
$this->setTestConfig();
$data = \Cloudipsp\Order::status($this->orderID);
$data = Order::status($this->orderID);
$result = $data->getData();
$this->assertNotEmpty($result['order_id'], 'order_id is empty');
$this->assertNotEmpty($result['order_status'], 'order_status is empty');
Expand All @@ -67,9 +67,9 @@ public function testCapture()
'amount' => 1000,
'order_id' => $this->orderID['order_id']
];
$data = \Cloudipsp\Order::capture($captureData);
$data = Order::capture($captureData);
$result = $data->getData();
$this->assertInternalType('array', $result);
$this->assertIsMyArray($result);
$this->assertEquals($result['capture_status'], 'captured');
}

Expand All @@ -84,7 +84,7 @@ public function testReverse()
'amount' => 1000,
'order_id' => $this->orderID['order_id']
];
$data = \Cloudipsp\Order::reverse($reverseData);
$data = Order::reverse($reverseData);
$result = $data->getData();
$this->assertNotEmpty($result['order_id'], 'order_id is empty');
$this->assertEquals($result['response_status'], 'success');
Expand All @@ -97,23 +97,25 @@ public function testReverse()
public function testTransactionList()
{
$this->setTestConfig();
$data = \Cloudipsp\Order::transactionList($this->orderID);
$data = Order::transactionList($this->orderID);
$result = $data->getData();
$this->assertInternalType('array', $result);
$this->assertContains('payment_id', $result[0]);
$this->assertIsMyArray($result);
$this->assertEquals('approved', $result[0]['transaction_status']);

}

/**
* @throws Exception\ApiException
* @param $array
* @param $message
*/
/*public function testAtolLogs()
private function assertIsMyArray($array, $message = '')
{
$this->setTestConfig();
$data = \Cloudipsp\Order::atolLogs($this->orderID);
$result = $data->getData();
$this->assertInternalType('array', $result);
}*/
if (method_exists(get_parent_class($this), 'assertIsArray')) {
$this->assertIsArray($array, $message);
} else {
$this->assertInternalType('array', $array, $message);
}
}

/**
* @param $data
Expand All @@ -122,7 +124,7 @@ public function testTransactionList()
*/
private function createOrder($data)
{
$data = \Cloudipsp\Pcidss::start($data);
$data = Pcidss::start($data);
return $data->getData()['order_id'];
}
}
12 changes: 6 additions & 6 deletions tests/P2pcreditTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,10 @@ class P2pcreditTest extends TestCase

private function setTestConfig()
{
\Cloudipsp\Configuration::setMerchantId($this->mid);
\Cloudipsp\Configuration::setSecretKey('');
\Cloudipsp\Configuration::setCreditKey($this->CreditKey);
\Cloudipsp\Configuration::setApiVersion('1.0');
Configuration::setMerchantId($this->mid);
Configuration::setSecretKey('');
Configuration::setCreditKey($this->CreditKey);
Configuration::setApiVersion('1.0');
}

/**
Expand All @@ -30,8 +30,8 @@ public function testCredit()
{
$this->setTestConfig();
foreach ($this->request_types as $type) {
\Cloudipsp\Configuration::setRequestType($type);
$result = \Cloudipsp\P2pcredit::start($this->TestData);
Configuration::setRequestType($type);
$result = P2pcredit::start($this->TestData);
$this->validateResult($result->getData());
$this->isValid($result->isValid());
}
Expand Down
Loading

0 comments on commit e92adf8

Please sign in to comment.