mirror of
https://gitlab.com/Chill-Projet/chill-bundles.git
synced 2025-06-07 18:44:08 +00:00
Tests
This commit is contained in:
parent
68a64aa67f
commit
e1b3719746
@ -0,0 +1,148 @@
|
||||
<?php
|
||||
|
||||
/**
|
||||
* Chill is a software for social workers
|
||||
*
|
||||
* For the full copyright and license information, please view
|
||||
* the LICENSE file that was distributed with this source code.
|
||||
*/
|
||||
|
||||
declare(strict_types=1);
|
||||
|
||||
namespace Chill\MainBundle\Tests\Routing\Loader;
|
||||
|
||||
use Chill\MainBundle\Phonenumber\PhonenumberHelper;
|
||||
use Chill\MainBundle\Phonenumber\PhoneNumberHelperInterface;
|
||||
use Psr\Log\NullLogger;
|
||||
use Symfony\Bundle\FrameworkBundle\Test\KernelTestCase;
|
||||
use Symfony\Component\Cache\Adapter\ArrayAdapter;
|
||||
use Symfony\Component\DependencyInjection\ParameterBag\ParameterBag;
|
||||
|
||||
final class PhonenumberHelperTest extends KernelTestCase
|
||||
{
|
||||
/**
|
||||
* @dataProvider normalizePhonenumbers
|
||||
*/
|
||||
public function testNormalizePhonenumbers(string $defaultCarrierCode, string $phoneNumber, string $expected)
|
||||
{
|
||||
$subject = new PhonenumberHelper(
|
||||
new ArrayAdapter(),
|
||||
new ParameterBag([
|
||||
'chill_main.phone_helper' => [
|
||||
'default_carrier_code' => $defaultCarrierCode,
|
||||
],
|
||||
]),
|
||||
new NullLogger()
|
||||
);
|
||||
|
||||
$this->assertEquals($expected, $subject->normalize($phoneNumber));
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider denormalizePhonenumbers
|
||||
*/
|
||||
public function testDenormalizePhonenumbers(string $defaultCarrierCode, string $phoneNumber, string $expected)
|
||||
{
|
||||
$subject = new PhonenumberHelper(
|
||||
new ArrayAdapter(),
|
||||
new ParameterBag([
|
||||
'chill_main.phone_helper' => [
|
||||
'default_carrier_code' => $defaultCarrierCode,
|
||||
],
|
||||
]),
|
||||
new NullLogger()
|
||||
);
|
||||
|
||||
$this->assertEquals($expected, $subject->denormalize($phoneNumber));
|
||||
}
|
||||
|
||||
/**
|
||||
* @dataProvider formatPhonenumbers
|
||||
*/
|
||||
public function testFormatPhonenumbers(string $defaultCarrierCode, string $phoneNumber, string $expected)
|
||||
{
|
||||
$subject = new PhonenumberHelper(
|
||||
new ArrayAdapter(),
|
||||
new ParameterBag([
|
||||
'chill_main.phone_helper' => [
|
||||
'default_carrier_code' => $defaultCarrierCode,
|
||||
],
|
||||
]),
|
||||
new NullLogger()
|
||||
);
|
||||
|
||||
$this->assertEquals($expected, $subject->format($phoneNumber));
|
||||
}
|
||||
|
||||
public function formatPhonenumbers() {
|
||||
yield [
|
||||
'BE',
|
||||
'+3281136917',
|
||||
'081 13 69 17',
|
||||
];
|
||||
|
||||
yield [
|
||||
'FR',
|
||||
'+33 6 23 12 45 54',
|
||||
'06 23 12 45 54',
|
||||
];
|
||||
|
||||
yield [
|
||||
'FR',
|
||||
'+32 81 13 69 17',
|
||||
'081 13 69 17',
|
||||
];
|
||||
|
||||
yield [
|
||||
'BE',
|
||||
'+33 6 23 12 45 54',
|
||||
'06 23 12 45 54',
|
||||
];
|
||||
}
|
||||
|
||||
public function normalizePhonenumbers() {
|
||||
yield [
|
||||
'BE',
|
||||
'081136917',
|
||||
'+3281136917',
|
||||
];
|
||||
|
||||
yield [
|
||||
'BE',
|
||||
'003281136917',
|
||||
'+3281136917',
|
||||
];
|
||||
|
||||
yield [
|
||||
'BE',
|
||||
'0032478123456',
|
||||
'+32478123456',
|
||||
];
|
||||
|
||||
yield [
|
||||
'BE',
|
||||
'0478123456',
|
||||
'+32478123456',
|
||||
];
|
||||
|
||||
yield [
|
||||
'FR',
|
||||
'0623124554',
|
||||
'+33623124554',
|
||||
];
|
||||
}
|
||||
|
||||
public function denormalizePhonenumbers() {
|
||||
yield [
|
||||
'BE',
|
||||
'+3281136917',
|
||||
'+3281136917',
|
||||
];
|
||||
|
||||
yield [
|
||||
'BE',
|
||||
'+33 6 23 12 45 54',
|
||||
'+33623124554',
|
||||
];
|
||||
}
|
||||
}
|
@ -37,15 +37,13 @@ final class ValidPhonenumber extends ConstraintValidator
|
||||
*/
|
||||
public function validate($value, Constraint $constraint)
|
||||
{
|
||||
dump($value);
|
||||
|
||||
if (false === $this->phonenumberHelper->isPhonenumberValidationConfigured()) {
|
||||
$this->logger->debug('[phonenumber] skipping validation due to not configured helper');
|
||||
|
||||
return;
|
||||
}
|
||||
|
||||
if (empty($value)) {
|
||||
if ('' === $value) {
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1 +1 @@
|
||||
Subproject commit 0fef0f21602989ed3aa6b301080ae406d71dd632
|
||||
Subproject commit 8d4a020ba2b824ac94fee53cf9df3935d9f449bf
|
Loading…
x
Reference in New Issue
Block a user