Files
kulakpos_web/vendor/fedapay/fedapay-php/tests/Util/UtilTest.php
triagungbiantoro 417b7b7453
All checks were successful
Build, Push and Deploy / build-and-push (push) Successful in 3m27s
Gitea Actions Demo / Explore-Gitea-Actions (push) Successful in 16s
Build, Push and Deploy / deploy-staging (push) Successful in 31s
Build, Push and Deploy / deploy-production (push) Has been skipped
harga pada beranda terhubung ke manage plans di dashboard admin
2026-04-25 21:57:25 +07:00

93 lines
2.5 KiB
PHP
Executable File

<?php
namespace Tests;
use FedaPay\Util;
class UtilTest extends BaseTestCase
{
public function testIsList()
{
$list = [5, 'nstaoush', []];
$this->assertTrue(Util\Util::isList($list));
$notlist = [5, 'nstaoush', [], 'bar' => 'baz'];
$this->assertFalse(Util\Util::isList($notlist));
}
public function testConvertFedaPayObjectToArrayIncludesId()
{
$customer = Util\Util::convertToFedaPayObject(
[
'id' => '123',
'object' => 'v1/customer',
'value' => ['a', 'b']
],
[]
);
$array = $customer->__toArray(true);
$this->assertTrue(array_key_exists('id', $array));
$this->assertEquals($array['id'], '123');
$this->assertEquals(['a', 'b'], $array['value']);
}
public function testEncodeParameters()
{
$params = [
'a' => 3,
'b' => '+foo?',
'c' => 'bar&baz',
'd' => ['a' => 'a', 'b' => 'b'],
'e' => [0, 1],
'f' => '',
// note the empty hash won't even show up in the request
'g' => [],
];
$this->assertSame(
"a=3&b=%2Bfoo%3F&c=bar%26baz&d[a]=a&d[b]=b&e[]=0&e[]=1&f=",
Util\Util::encodeParameters($params)
);
}
public function testUrlEncode()
{
$this->assertSame("foo", Util\Util::urlEncode("foo"));
$this->assertSame("foo%2B", Util\Util::urlEncode("foo+"));
$this->assertSame("foo%26", Util\Util::urlEncode("foo&"));
$this->assertSame("foo[bar]", Util\Util::urlEncode("foo[bar]"));
}
public function testFlattenParams()
{
$params = [
'a' => 3,
'b' => '+foo?',
'c' => 'bar&baz',
'd' => ['a' => 'a', 'b' => 'b'],
'e' => [0, 1],
'f' => [
['foo' => '1', 'ghi' => '2'],
['foo' => '3', 'bar' => '4'],
],
];
$encoded = [];
Util\Util::flattenParams($params, $encoded);
$this->assertSame(
[
['a', 3],
['b', '+foo?'],
['c', 'bar&baz'],
['d[a]', 'a'],
['d[b]', 'b'],
['e[]', 0],
['e[]', 1],
['f[][foo]', '1'],
['f[][ghi]', '2'],
['f[][foo]', '3'],
['f[][bar]', '4'],
],
$encoded
);
}
}