![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/magento/module-customer/Test/Unit/Model/Attribute/Backend/ |
<?php /** * Copyright © Magento, Inc. All rights reserved. * See COPYING.txt for license details. */ declare(strict_types=1); namespace Magento\Customer\Test\Unit\Model\Attribute\Backend; use Magento\Customer\Model\Attribute\Backend\Data\Boolean; use Magento\Customer\Model\Customer; use Magento\Eav\Model\Entity\Attribute\AbstractAttribute; use PHPUnit\Framework\TestCase; class BooleanTest extends TestCase { /** * @var Boolean */ protected $model; protected function setUp(): void { $this->model = new Boolean(); } /** * @param mixed $value * @param mixed $defaultValue * @param string|mixed $result * * @dataProvider beforeSaveDataProvider */ public function testBeforeSave($value, $defaultValue, $result) { $attributeMock = $this->getMockBuilder(AbstractAttribute::class) ->setMethods(['getName', 'getDefaultValue']) ->disableOriginalConstructor() ->getMockForAbstractClass(); $customerMock = $this->getMockBuilder(Customer::class) ->disableOriginalConstructor() ->getMock(); $this->model->setAttribute($attributeMock); $attributeMock->expects($this->once()) ->method('getName') ->willReturn('attribute_name'); $attributeMock->expects($this->any()) ->method('getDefaultValue') ->willReturn($defaultValue); $customerMock->expects($this->once()) ->method('getData') ->with('attribute_name', null) ->willReturn($value); $customerMock->expects($this->once()) ->method('setData') ->with('attribute_name', $result) ->willReturnSelf(); $this->assertEquals($this->model, $this->model->beforeSave($customerMock)); } /** * @return array */ public function beforeSaveDataProvider() { return [ [null, null, '0'], [null, '', '0'], [null, '0', '0'], [null, '1', '1'], [null, 'Yes', '1'], ['', null, '0'], ['0', null, '0'], ['0', '1', '0'], ['1', null, '1'], ['1', 'Yes', '1'], ['Yes', null, '1'], ['Yes', 'Yes', '1'], ]; } }