Updated to Drupal 8.5. Core Media not yet in use.
[yaffs-website] / vendor / symfony / serializer / Tests / NameConverter / CamelCaseToSnakeCaseNameConverterTest.php
1 <?php
2
3 /*
4  * This file is part of the Symfony package.
5  *
6  * (c) Fabien Potencier <fabien@symfony.com>
7  *
8  * For the full copyright and license information, please view the LICENSE
9  * file that was distributed with this source code.
10  */
11
12 namespace Symfony\Component\Serializer\Tests\NameConverter;
13
14 use PHPUnit\Framework\TestCase;
15 use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter;
16
17 /**
18  * @author Kévin Dunglas <dunglas@gmail.com>
19  */
20 class CamelCaseToSnakeCaseNameConverterTest extends TestCase
21 {
22     public function testInterface()
23     {
24         $attributeMetadata = new CamelCaseToSnakeCaseNameConverter();
25         $this->assertInstanceOf('Symfony\Component\Serializer\NameConverter\NameConverterInterface', $attributeMetadata);
26     }
27
28     /**
29      * @dataProvider attributeProvider
30      */
31     public function testNormalize($underscored, $camelCased, $useLowerCamelCase)
32     {
33         $nameConverter = new CamelCaseToSnakeCaseNameConverter(null, $useLowerCamelCase);
34         $this->assertEquals($nameConverter->normalize($camelCased), $underscored);
35     }
36
37     /**
38      * @dataProvider attributeProvider
39      */
40     public function testDenormalize($underscored, $camelCased, $useLowerCamelCase)
41     {
42         $nameConverter = new CamelCaseToSnakeCaseNameConverter(null, $useLowerCamelCase);
43         $this->assertEquals($nameConverter->denormalize($underscored), $camelCased);
44     }
45
46     public function attributeProvider()
47     {
48         return array(
49             array('coop_tilleuls', 'coopTilleuls', true),
50             array('_kevin_dunglas', '_kevinDunglas', true),
51             array('this_is_a_test', 'thisIsATest', true),
52             array('coop_tilleuls', 'CoopTilleuls', false),
53             array('_kevin_dunglas', '_kevinDunglas', false),
54             array('this_is_a_test', 'ThisIsATest', false),
55         );
56     }
57 }