class YamlFileLoaderTest in Zircon Profile 8.0
Same name in this branch
- 8.0 vendor/symfony/routing/Tests/Loader/YamlFileLoaderTest.php \Symfony\Component\Routing\Tests\Loader\YamlFileLoaderTest
- 8.0 vendor/symfony/translation/Tests/Loader/YamlFileLoaderTest.php \Symfony\Component\Translation\Tests\Loader\YamlFileLoaderTest
- 8.0 vendor/symfony/dependency-injection/Tests/Loader/YamlFileLoaderTest.php \Symfony\Component\DependencyInjection\Tests\Loader\YamlFileLoaderTest
- 8.0 vendor/symfony/validator/Tests/Mapping/Loader/YamlFileLoaderTest.php \Symfony\Component\Validator\Tests\Mapping\Loader\YamlFileLoaderTest
- 8.0 vendor/symfony/serializer/Tests/Mapping/Loader/YamlFileLoaderTest.php \Symfony\Component\Serializer\Tests\Mapping\Loader\YamlFileLoaderTest
Same name and namespace in other branches
- 8 vendor/symfony/routing/Tests/Loader/YamlFileLoaderTest.php \Symfony\Component\Routing\Tests\Loader\YamlFileLoaderTest
Hierarchy
- class \Symfony\Component\Routing\Tests\Loader\YamlFileLoaderTest extends \Symfony\Component\Routing\Tests\Loader\PHPUnit_Framework_TestCase
Expanded class hierarchy of YamlFileLoaderTest
File
- vendor/
symfony/ routing/ Tests/ Loader/ YamlFileLoaderTest.php, line 18
Namespace
Symfony\Component\Routing\Tests\LoaderView source
class YamlFileLoaderTest extends \PHPUnit_Framework_TestCase {
public function testSupports() {
$loader = new YamlFileLoader($this
->getMock('Symfony\\Component\\Config\\FileLocator'));
$this
->assertTrue($loader
->supports('foo.yml'), '->supports() returns true if the resource is loadable');
$this
->assertTrue($loader
->supports('foo.yaml'), '->supports() returns true if the resource is loadable');
$this
->assertFalse($loader
->supports('foo.foo'), '->supports() returns true if the resource is loadable');
$this
->assertTrue($loader
->supports('foo.yml', 'yaml'), '->supports() checks the resource type if specified');
$this
->assertTrue($loader
->supports('foo.yaml', 'yaml'), '->supports() checks the resource type if specified');
$this
->assertFalse($loader
->supports('foo.yml', 'foo'), '->supports() checks the resource type if specified');
}
public function testLoadDoesNothingIfEmpty() {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$collection = $loader
->load('empty.yml');
$this
->assertEquals(array(), $collection
->all());
$this
->assertEquals(array(
new FileResource(realpath(__DIR__ . '/../Fixtures/empty.yml')),
), $collection
->getResources());
}
/**
* @expectedException \InvalidArgumentException
* @dataProvider getPathsToInvalidFiles
*/
public function testLoadThrowsExceptionWithInvalidFile($filePath) {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$loader
->load($filePath);
}
public function getPathsToInvalidFiles() {
return array(
array(
'nonvalid.yml',
),
array(
'nonvalid2.yml',
),
array(
'incomplete.yml',
),
array(
'nonvalidkeys.yml',
),
array(
'nonesense_resource_plus_path.yml',
),
array(
'nonesense_type_without_resource.yml',
),
array(
'bad_format.yml',
),
);
}
public function testLoadSpecialRouteName() {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$routeCollection = $loader
->load('special_route_name.yml');
$route = $routeCollection
->get('#$péß^a|');
$this
->assertInstanceOf('Symfony\\Component\\Routing\\Route', $route);
$this
->assertSame('/true', $route
->getPath());
}
public function testLoadWithRoute() {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$routeCollection = $loader
->load('validpattern.yml');
$route = $routeCollection
->get('blog_show');
$this
->assertInstanceOf('Symfony\\Component\\Routing\\Route', $route);
$this
->assertSame('/blog/{slug}', $route
->getPath());
$this
->assertSame('{locale}.example.com', $route
->getHost());
$this
->assertSame('MyBundle:Blog:show', $route
->getDefault('_controller'));
$this
->assertSame('\\w+', $route
->getRequirement('locale'));
$this
->assertSame('RouteCompiler', $route
->getOption('compiler_class'));
$this
->assertEquals(array(
'GET',
'POST',
'PUT',
'OPTIONS',
), $route
->getMethods());
$this
->assertEquals(array(
'https',
), $route
->getSchemes());
$this
->assertEquals('context.getMethod() == "GET"', $route
->getCondition());
}
/**
* @group legacy
*/
public function testLegacyRouteDefinitionLoading() {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$routeCollection = $loader
->load('legacy_validpattern.yml');
$route = $routeCollection
->get('blog_show_legacy');
$this
->assertInstanceOf('Symfony\\Component\\Routing\\Route', $route);
$this
->assertSame('/blog/{slug}', $route
->getPath());
$this
->assertSame('{locale}.example.com', $route
->getHost());
$this
->assertSame('MyBundle:Blog:show', $route
->getDefault('_controller'));
$this
->assertSame('\\w+', $route
->getRequirement('locale'));
$this
->assertSame('RouteCompiler', $route
->getOption('compiler_class'));
$this
->assertEquals(array(
'GET',
'POST',
'PUT',
'OPTIONS',
), $route
->getMethods());
$this
->assertEquals(array(
'https',
), $route
->getSchemes());
$this
->assertEquals('context.getMethod() == "GET"', $route
->getCondition());
}
public function testLoadWithResource() {
$loader = new YamlFileLoader(new FileLocator(array(
__DIR__ . '/../Fixtures',
)));
$routeCollection = $loader
->load('validresource.yml');
$routes = $routeCollection
->all();
$this
->assertCount(2, $routes, 'Two routes are loaded');
$this
->assertContainsOnly('Symfony\\Component\\Routing\\Route', $routes);
foreach ($routes as $route) {
$this
->assertSame('/{foo}/blog/{slug}', $route
->getPath());
$this
->assertSame('123', $route
->getDefault('foo'));
$this
->assertSame('\\d+', $route
->getRequirement('foo'));
$this
->assertSame('bar', $route
->getOption('foo'));
$this
->assertSame('', $route
->getHost());
$this
->assertSame('context.getMethod() == "POST"', $route
->getCondition());
}
}
}
Members
Name | Modifiers | Type | Description | Overrides |
---|---|---|---|---|
YamlFileLoaderTest:: |
public | function | ||
YamlFileLoaderTest:: |
public | function | @group legacy | |
YamlFileLoaderTest:: |
public | function | ||
YamlFileLoaderTest:: |
public | function | ||
YamlFileLoaderTest:: |
public | function | @expectedException \InvalidArgumentException @dataProvider getPathsToInvalidFiles | |
YamlFileLoaderTest:: |
public | function | ||
YamlFileLoaderTest:: |
public | function | ||
YamlFileLoaderTest:: |
public | function |