| Server IP : 54.94.228.101 / Your IP : 172.28.20.13 Web Server : Apache System : Linux ip-172-28-29-189 6.5.0-1014-aws #14~22.04.1-Ubuntu SMP Thu Feb 15 15:27:06 UTC 2024 x86_64 User : www-data ( 33) PHP Version : 7.2.34-43+ubuntu22.04.1+deb.sury.org+1 Disable Function : pcntl_alarm,pcntl_fork,pcntl_waitpid,pcntl_wait,pcntl_wifexited,pcntl_wifstopped,pcntl_wifsignaled,pcntl_wifcontinued,pcntl_wexitstatus,pcntl_wtermsig,pcntl_wstopsig,pcntl_signal,pcntl_signal_get_handler,pcntl_signal_dispatch,pcntl_get_last_error,pcntl_strerror,pcntl_sigprocmask,pcntl_sigwaitinfo,pcntl_sigtimedwait,pcntl_exec,pcntl_getpriority,pcntl_setpriority,pcntl_async_signals, MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : OFF | Sudo : ON | Pkexec : ON Directory : /var/www/html/vinumday2_0/vendor/pagarme/pagarme-php/tests/unit/SplitRule/ |
Upload File : |
<?php
namespace PagarMe\SdkTest\SplitRule;
use PagarMe\Sdk\SplitRule\SplitRuleHandler;
class SplitRuleHandlerTest extends \PHPUnit_Framework_TestCase
{
public function splitData()
{
return [
[100, 123, true, false, true],
[666, 321, false, false, false],
[23, 233, null, false, true],
[42, 800, null, true, null],
];
}
/**
* @dataProvider splitData
* @test
*/
public function mustReturnSplitRuleWithMonetaryValue(
$value,
$recipientId,
$liable,
$chargeProcessingFee,
$chargeRemainder
) {
$recipientMock = $this->getMockBuilder('PagarMe\Sdk\Recipient\Recipient')
->disableOriginalConstructor()
->getMock();
$recipientMock->method('getId')->willReturn($recipientId);
$splitRuleHandler = new SplitRuleHandler();
$rule = $splitRuleHandler->monetaryRule(
$value,
$recipientMock,
$liable,
$chargeProcessingFee,
$chargeRemainder
);
$this->assertEquals($value, $rule->getAmount());
$this->assertNull($rule->getPercentage());
$this->assertEquals($liable, $rule->getLiable());
$this->assertEquals($chargeProcessingFee, $rule->getChargeProcessingFee());
$this->assertEquals($recipientId, $rule->getRecipient()->getId());
$this->assertEquals($chargeRemainder, $rule->getChargeRemainder());
}
/**
* @dataProvider splitData
* @test
*/
public function mustReturnSplitRuleWithPercentageValue(
$value,
$recipientId,
$liable,
$chargeProcessingFee,
$chargeRemainder
) {
$recipientMock = $this->getMockBuilder('PagarMe\Sdk\Recipient\Recipient')
->disableOriginalConstructor()
->getMock();
$recipientMock->method('getId')->willReturn($recipientId);
$splitRuleHandler = new SplitRuleHandler();
$rule = $splitRuleHandler->percentageRule(
$value,
$recipientMock,
$liable,
$chargeProcessingFee,
$chargeRemainder
);
$this->assertEquals($value, $rule->getPercentage());
$this->assertNull($rule->getAmount());
$this->assertEquals($liable, $rule->getLiable());
$this->assertEquals($chargeProcessingFee, $rule->getChargeProcessingFee());
$this->assertEquals($recipientId, $rule->getRecipient()->getId());
$this->assertEquals($chargeRemainder, $rule->getChargeRemainder());
}
}