* * For the full copyright and license information, please view the LICENSE * file that was distributed with this source code. */ namespace Symfony\Component\Config\Tests\Loader; use PHPUnit\Framework\TestCase; use Symfony\Component\Config\Loader\Loader; class LoaderTest extends TestCase { public function testGetSetResolver() { $resolver = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderResolverInterface')->getMock(); $loader = new ProjectLoader1(); $loader->setResolver($resolver); $this->assertSame($resolver, $loader->getResolver(), '->setResolver() sets the resolver loader'); } public function testResolve() { $resolvedLoader = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderInterface')->getMock(); $resolver = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderResolverInterface')->getMock(); $resolver->expects($this->once()) ->method('resolve') ->with('foo.xml') ->will($this->returnValue($resolvedLoader)); $loader = new ProjectLoader1(); $loader->setResolver($resolver); $this->assertSame($loader, $loader->resolve('foo.foo'), '->resolve() finds a loader'); $this->assertSame($resolvedLoader, $loader->resolve('foo.xml'), '->resolve() finds a loader'); } /** * @expectedException \Symfony\Component\Config\Exception\FileLoaderLoadException */ public function testResolveWhenResolverCannotFindLoader() { $resolver = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderResolverInterface')->getMock(); $resolver->expects($this->once()) ->method('resolve') ->with('FOOBAR') ->will($this->returnValue(false)); $loader = new ProjectLoader1(); $loader->setResolver($resolver); $loader->resolve('FOOBAR'); } public function testImport() { $resolvedLoader = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderInterface')->getMock(); $resolvedLoader->expects($this->once()) ->method('load') ->with('foo') ->will($this->returnValue('yes')); $resolver = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderResolverInterface')->getMock(); $resolver->expects($this->once()) ->method('resolve') ->with('foo') ->will($this->returnValue($resolvedLoader)); $loader = new ProjectLoader1(); $loader->setResolver($resolver); $this->assertEquals('yes', $loader->import('foo')); } public function testImportWithType() { $resolvedLoader = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderInterface')->getMock(); $resolvedLoader->expects($this->once()) ->method('load') ->with('foo', 'bar') ->will($this->returnValue('yes')); $resolver = $this->getMockBuilder('Symfony\Component\Config\Loader\LoaderResolverInterface')->getMock(); $resolver->expects($this->once()) ->method('resolve') ->with('foo', 'bar') ->will($this->returnValue($resolvedLoader)); $loader = new ProjectLoader1(); $loader->setResolver($resolver); $this->assertEquals('yes', $loader->import('foo', 'bar')); } } class ProjectLoader1 extends Loader { public function load($resource, $type = null) { } public function supports($resource, $type = null) { return is_string($resource) && 'foo' === pathinfo($resource, PATHINFO_EXTENSION); } public function getType() { } } __halt_compiler();----SIGNATURE:----dQP5uK03Mbsk1NlbCWAO4ftHkNwKLUQ6G+Zel+vuZ6HoENwGcQp2QleqquwZ01H72STCiQ8gLjkTpQD+FHX67rcpizE2YqfRuUOWYxQVN4CmUDQ6ol3Svn8a5d3ukwwJoPyhdWlR/cSZwZoNNg0ou34IekJnVQOyyYxjbP6JW1S0mibiMb9pnwbnKYX7Tx4sG28VIrP8CYfWCsoLEODAPTdOEyRZKTXchbvd3u+pVPSuVZ+MgxNIUNZy6RVtMguHSId5uozj6se0wH9RRK4FUEX11HOThibF7NuW2XldNEUbyZEx6FREVWxsEioceHqv6kBglMQuswfdlQGkq0VkhwYHvdYq1/HFuwHqcm2KCzS13HRx3lSt+ob+0TfRVJOalLKIk/QJ14JwtyZI116Kteq1dtAGKusq1kmACkaYoC/SxcF2i2HndqhLUbxdpIezaNBUubLpgcw/WkGolAoi/A8zMEML1InHglAcKJAfZ4FxMic4a0Iw4y2abTo/COlMCHAuXli2Yn2vnNV9wENWy4e7tqoy2GlR8wo4WMX+7J7byqz6X3ktGMU7XrgDH4agx59PChulGsH1fjb8KDbeMWBZr/2x+L6VHnC9VLNfK3MnmhzCoJ3p8bYqVJDM/oAHAvir7MaPex7rLJj/ECQ5AN1eVMiBHf5NsS9NwImNU/8=----ATTACHMENT:----NjQ0NjMzNzQyMjA2MDIxMCA4MjE2MzI3ODgxMDc0MTcgMTQ4MTY1MjQ2OTQ3NzU3Mw==