fix annotation, complete test for customer builder
This commit is contained in:
parent
c02c1ff032
commit
3814d0f612
2 changed files with 20 additions and 1 deletions
|
@ -153,7 +153,7 @@ class Customer extends AbstractApiModel
|
|||
/**
|
||||
* Телефоны
|
||||
*
|
||||
* @var array $phones
|
||||
* @var \Intaro\RetailCrm\Model\Api\Phone[] $phones
|
||||
*
|
||||
* @Mapping\Type("array<Intaro\RetailCrm\Model\Api\Phone>")
|
||||
* @Mapping\SerializedName("phones")
|
||||
|
|
|
@ -5,8 +5,11 @@ namespace Tests\Intaro\RetailCrm\Component\Builder\Api;
|
|||
use Bitrix\Main\Type\DateTime;
|
||||
use Intaro\RetailCrm\Component\Builder\Api\CustomerBuilder;
|
||||
use Intaro\RetailCrm\Component\ConfigProvider;
|
||||
use Intaro\RetailCrm\Component\Converter\DateTimeConverter;
|
||||
use Intaro\RetailCrm\Model\Api\Address;
|
||||
use Intaro\RetailCrm\Model\Api\Customer;
|
||||
use Intaro\RetailCrm\Model\Bitrix\User;
|
||||
use PHPUnit\Framework\Constraint\IsType;
|
||||
use PHPUnit\Framework\TestCase;
|
||||
|
||||
class CustomerBuilderTest extends TestCase
|
||||
|
@ -30,6 +33,8 @@ class CustomerBuilderTest extends TestCase
|
|||
{
|
||||
$this->assertTrue($entity instanceof User);
|
||||
|
||||
$_COOKIE['_rc'] = 'rcCookie';
|
||||
|
||||
$builder = new CustomerBuilder();
|
||||
$result = $builder
|
||||
->setPersonTypeId('individual')
|
||||
|
@ -39,6 +44,20 @@ class CustomerBuilderTest extends TestCase
|
|||
|
||||
$this->assertTrue($result instanceof Customer);
|
||||
$this->assertEquals($entity->getId(), $result->externalId);
|
||||
$this->assertEquals($entity->getEmail(), $result->email);
|
||||
$this->assertEquals(DateTimeConverter::bitrixToPhp($entity->getDateRegister()), $result->createdAt);
|
||||
$this->assertFalse($result->subscribed);
|
||||
$this->assertEquals($entity->getName(), $result->firstName);
|
||||
$this->assertEquals($entity->getLastName(), $result->lastName);
|
||||
$this->assertEquals($entity->getSecondName(), $result->patronymic);
|
||||
$this->assertCount(2, $result->phones);
|
||||
$this->assertEquals($entity->getPersonalPhone(), $result->phones[0]->number);
|
||||
$this->assertEquals($entity->getWorkPhone(), $result->phones[1]->number);
|
||||
$this->assertThat($result->address, new IsType(Address::class));
|
||||
$this->assertEquals($entity->getPersonalCity(), $result->address->city);
|
||||
$this->assertEquals($entity->getPersonalStreet(), $result->address->text);
|
||||
$this->assertEquals($entity->getPersonalZip(), $result->address->index);
|
||||
$this->assertEquals($_COOKIE['_rc'], $result->browserId);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
Loading…
Add table
Reference in a new issue