Рефакторинг исключений, новые константы ограничений

Описывать все слишком долго, TLDR:
- упрощены корневые AtolException, {BasicTooLongException => TooLongException}, {BasicTooManyException => TooManyException}
- InvalidSnoException заменён на InvalidEnumValueException
- добавлены новые константы, общий порядок изменён в соответствии с порядком упоминания в документации, ссылки на которую тоже добавлены с указанием страниц

Помимо этого, в enum-ах теперь должен быть предусмотрен метод getFfdTags()
This commit is contained in:
2021-11-22 14:51:10 +08:00
parent e1303f4fdb
commit 3bf8667437
48 changed files with 482 additions and 603 deletions

View File

@@ -13,11 +13,11 @@ use AtolOnline\{
Entities\Client,
Exceptions\InvalidEmailException,
Exceptions\InvalidInnLengthException,
Exceptions\TooLongClientContactException,
Exceptions\TooLongClientNameException,
Exceptions\TooLongEmailException,
Exceptions\TooLongNameException,
Exceptions\TooLongPhoneException,
Helpers
};
Exceptions\TooLongItemNameException,
Helpers};
/**
* Набор тестов для проверки работы класс покупателя
@@ -135,7 +135,7 @@ class ClientTest extends BasicTestCase
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setName
* @covers \AtolOnline\Entities\Client::getName
* @throws TooLongNameException
* @throws TooLongClientNameException
*/
public function testNullableNames(mixed $name): void
{
@@ -149,7 +149,7 @@ class ClientTest extends BasicTestCase
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setName
* @covers \AtolOnline\Entities\Client::getName
* @throws TooLongNameException
* @throws TooLongItemNameException
*/
public function testValidName(): void
{
@@ -163,12 +163,11 @@ class ClientTest extends BasicTestCase
*
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setName
* @covers \AtolOnline\Exceptions\TooLongNameException
* @throws TooLongNameException
* @covers \AtolOnline\Exceptions\TooLongClientNameException
*/
public function testInvalidName(): void
{
$this->expectException(TooLongNameException::class);
$this->expectException(TooLongClientNameException::class);
(new Client())->setName(Helpers::randomStr(400));
}
@@ -182,7 +181,7 @@ class ClientTest extends BasicTestCase
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setPhone
* @covers \AtolOnline\Entities\Client::getPhone
* @throws TooLongPhoneException
* @throws TooLongClientContactException
*/
public function testNullablePhones(mixed $phone): void
{
@@ -197,7 +196,7 @@ class ClientTest extends BasicTestCase
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setPhone
* @covers \AtolOnline\Entities\Client::getPhone
* @throws TooLongPhoneException
* @throws TooLongClientContactException
*/
public function testValidPhone(string $input, string $output): void
{
@@ -210,12 +209,12 @@ class ClientTest extends BasicTestCase
*
* @covers \AtolOnline\Entities\Client
* @covers \AtolOnline\Entities\Client::setPhone
* @covers \AtolOnline\Exceptions\TooLongPhoneException
* @throws TooLongPhoneException
* @covers \AtolOnline\Exceptions\TooLongClientContactException
* @throws TooLongClientContactException
*/
public function testInvalidPhone(): void
public function testTooLongClientPhone(): void
{
$this->expectException(TooLongPhoneException::class);
$this->expectException(TooLongClientContactException::class);
(new Client())->setPhone('99999999999999999999999999999999999999999999999999999999999999999999999999');
}
@@ -315,4 +314,4 @@ class ClientTest extends BasicTestCase
$this->expectException(InvalidInnLengthException::class);
(new Client())->setInn('1234567890123');
}
}
}