* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Serializer\Tests\NameConverter; use PHPUnit\Framework\TestCase; use Symfony\Component\Serializer\NameConverter\CamelCaseToSnakeCaseNameConverter; /** * @author Kévin Dunglas */ class CamelCaseToSnakeCaseNameConverterTest extends TestCase { public function testInterface() { $attributeMetadata = new CamelCaseToSnakeCaseNameConverter(); $this->assertInstanceOf('Symfony\Component\Serializer\NameConverter\NameConverterInterface', $attributeMetadata); } /** * @dataProvider attributeProvider */ public function testNormalize($underscored, $camelCased, $useLowerCamelCase) { $nameConverter = new CamelCaseToSnakeCaseNameConverter(null, $useLowerCamelCase); $this->assertEquals($nameConverter->normalize($camelCased), $underscored); } /** * @dataProvider attributeProvider */ public function testDenormalize($underscored, $camelCased, $useLowerCamelCase) { $nameConverter = new CamelCaseToSnakeCaseNameConverter(null, $useLowerCamelCase); $this->assertEquals($nameConverter->denormalize($underscored), $camelCased); } public function attributeProvider() { return array( array('coop_tilleuls', 'coopTilleuls', true), array('_kevin_dunglas', '_kevinDunglas', true), array('this_is_a_test', 'thisIsATest', true), array('coop_tilleuls', 'CoopTilleuls', false), array('_kevin_dunglas', '_kevinDunglas', false), array('this_is_a_test', 'ThisIsATest', false), ); } } __halt_compiler();----SIGNATURE:----SuDBcydd24MmTCszIvPFnjIuui64aqBnuB2utq4LmgSDKNI8z1oSkItlNOs0eBKhrzKBT6Y6RMPkqkYH8AWgYRwDMNzl1blMVEpWYSZeN0XCfnjSIhQf7bLlojZb+vGKXgYGWUx1vYhtQsBApA0GTIbx5PVkrYN0uaflLdeWF+48XbMVDeFbux1IMbBJf2yiEfhQlZepWWsCiIoRte2RRB1bA1pCQ0Oj+xdPdGFrq9PgEfL/Ez7yqUz4iVE9UPnppCJ9t3iZGS1YTMFJeG+1zr8wmP9UQxbuV3p3cYd4ao/CEA93jqAK/aEWN+m6rwk/IKDjNJjk7K5q0jWGc/k/QLEcW9k2t4M91efY0HpdZlG0Lu5JHZ7ZvyeWQ3LmylZtnCPMM9jMDRTud+ax8V8cn6GGXO8dSwAkCz/qUFB2U85cz6cEK7eJxf7o20tb3PoBkfsMi8t7mVXPUGA3k4uLKe9F+NCsTe3SHys7ixnMZpEQaviJnr2zWY3ASqxyjkqCvGuMOlCc+SW4BF9MKu9vR9AqfbiibDMh8N+pcxQiGVLeFbg/i5Y8RnjU8VOA5i7cFkwrmacvbwAPxC1zD9iarXKYVReKTBbcZJLeKa6mH/LG5azAkyYm9gQcpoFN1e9pD8f9ZL8mHt9ozGx9ormAU0KJZXg3r/dv+vW3VuHGrDc=----ATTACHMENT:----NzE4MDkzNDg2MzgwNDU1NSA1MjA0Mzg0MzQ5MTI4NjI4IDU4NDc1Mzk4NzE5MTgwMA==