b374k
m1n1 1.01
Apache/2.4.41 (Ubuntu)
Linux vmi616275.contaboserver.net 5.4.0-84-generic #94-Ubuntu SMP Thu Aug 26 20:27:37 UTC 2021 x86_64
uid=33(www-data) gid=33(www-data) groups=33(www-data)
server ip : 62.171.164.128 | your ip : 127.0.0.1
safemode OFF
 >  / home / dev2.destoffenstraat.com / vendor / magento / framework / Pricing / Test / Unit / Amount /
Filename/home/dev2.destoffenstraat.com/vendor/magento/framework/Pricing/Test/Unit/Amount/BaseTest.php
Size3.92 kb
Permissionrw-r--r--
Ownerroot : root
Create time17-Aug-2025 10:26
Last modified07-Jan-2021 21:08
Last accessed23-Aug-2025 03:56
Actionsedit | rename | delete | download (gzip)
Viewtext | code | image
<?php
/**
* Copyright © Magento, Inc. All rights reserved.
* See COPYING.txt for license details.
*/
declare(strict_types=1);

namespace Magento\Framework\Pricing\Test\Unit\Amount;

use Magento\Framework\Pricing\Amount\Base;
use PHPUnit\Framework\TestCase;

class BaseTest extends TestCase
{
/**
* Test getValue() without exclude argument
*/
public function testGetValueWithoutExclude()
{
$amount = 1;
$adjustments = [];
$exclude = null;

$model = $this->createEntity($amount, $adjustments);
$result = $model->getValue($exclude);
$this->assertEquals($amount, $result);
}

/**
* Test getValue() with exclude argument
*/
public function testGetValueWithExclude()
{
$amount = 1;
$code = 'test_adjustment';
$adjust = 5;
$adjustments = [$code => $adjust];
$expected = $amount - $adjust;

$model = $this->createEntity($amount, $adjustments);
$result = $model->getValue($code);
$this->assertEquals($expected, $result);
}

/**
* Test __toString()
*/
public function testToString()
{
$amount = 1;
$adjustments = [];

$model = $this->createEntity($amount, $adjustments);
$result = (string)$model;
$this->assertEquals($amount, $result);
}

/**
* Test getBaseAmount()
*/
public function testGetBaseAmount()
{
$amount = 1;
$adjustments = [];

$model = $this->createEntity($amount, $adjustments);
$result = $model->getBaseAmount();
$this->assertEquals($amount, $result);
}

/**
* Test getAdjustmentAmount() if no adjustment amounts
*/
public function testGetAdjustmentAmountNoAdjustments()
{
$amount = 1;
$adjustments = [];

$model = $this->createEntity($amount, $adjustments);
$result = $model->getAdjustmentAmount('some_code');
$this->assertFalse($result);
}

/**
* Test getAdjustmentAmount() if adjustment amount exists
*/
public function testGetAdjustmentAmountWithAdjustments()
{
$amount = 1;
$code = 'test_code';
$adjust = 10;
$adjustments = [$code => $adjust];

$model = $this->createEntity($amount, $adjustments);
$result = $model->getAdjustmentAmount($code);
$this->assertEquals($adjust, $result);
}

/**
* Test getTotalAdjustmentAmount()
*/
public function testGetTotalAdjustmentAmount()
{
$amount = 1;
$adjust1 = 10;
$adjust2 = 5;
$expected = $adjust1 + $adjust2;
$adjustments = [
'test_code1' => $adjust1,
'test_code2' => $adjust2,
];

$model = $this->createEntity($amount, $adjustments);
$result = $model->getTotalAdjustmentAmount();
$this->assertEquals($expected, $result);
}

/**
* Test getAdjustmentAmounts()
*/
public function testGetAdjustmentAmounts()
{
$amount = 1;
$adjust = 5;
$adjustments = [
'test_code1' => $adjust,
];

$model = $this->createEntity($amount, $adjustments);
$result = $model->getAdjustmentAmounts();
$this->assertEquals($adjustments, $result);
}

/**
* Test getAdjustmentAmounts()
*/
public function testHasAdjustment()
{
$amount = 1;
$adjust = 5;
$code = 'test_code1';
$adjustments = [
$code => $adjust,
];

$model = $this->createEntity($amount, $adjustments);
$result = $model->hasAdjustment($code);
$this->assertTrue($result);
}

/**
* Return instance of tested model
*
* @param string $amount
* @param array $adjustmentAmounts
* @return Base
*/
protected function createEntity($amount, array $adjustmentAmounts = [])
{
return new Base($amount, $adjustmentAmounts);
}
}