assertSame($expect, $actual); $actual = Autoload::load('Foo\Bar\ClassNameTest'); $expect = '/vendor/foo.bar/tests/ClassNameTest.php'; $this->assertSame($expect, $actual); } public function testMissingFile() { $actual = Autoload::load('No_Vendor\No_Package\NoClass'); $this->assertFalse($actual); } public function testDeepFile() { $actual = Autoload::load('Foo\Bar\Baz\Dib\Zim\Gir\ClassName'); $expect = '/vendor/foo.bar.baz.dib.zim.gir/src/ClassName.php'; $this->assertSame($expect, $actual); } public function testConfusion() { $actual = Autoload::load('Foo\Bar\DoomClassName'); $expect = '/vendor/foo.bar/src/DoomClassName.php'; $this->assertSame($expect, $actual); $actual = Autoload::load('Foo\BarDoom\ClassName'); $expect = '/vendor/foo.bardoom/src/ClassName.php'; $this->assertSame($expect, $actual); } public function testEmptyPrefix() { $actual = Autoload::load('ClassName'); $expect = '/vendor/src/ClassName.php'; $this->assertSame($expect, $actual); $actual = Autoload::load('Foo\Bar\AnotherClassName'); $expect = '/vendor/src/Foo/Bar/AnotherClassName.php'; $this->assertSame($expect, $actual); $actual = Autoload::load('Bar\Baz\ClassName'); $expect = '/vendor/src/Bar/Baz/ClassName.php'; $this->assertSame($expect, $actual); } }