mirror of
https://github.com/phpbb/phpbb.git
synced 2025-08-07 01:06:48 +02:00
[ticket/11700] Fix extension loading with namespaces
class loader now expects all classes to be prefixed with a backslash when resolving paths PHPBB3-11700
This commit is contained in:
@@ -53,11 +53,11 @@ class phpbb_controller_controller_test extends phpbb_test_case
|
||||
|
||||
// Autoloading classes within the tests folder does not work
|
||||
// so I'll include them manually.
|
||||
if (!class_exists('phpbb_ext_foo_controller'))
|
||||
if (!class_exists('foo\\controller'))
|
||||
{
|
||||
include(__DIR__.'/ext/foo/controller.php');
|
||||
}
|
||||
if (!class_exists('phpbb_controller_foo'))
|
||||
if (!class_exists('phpbb\\controller\\foo'))
|
||||
{
|
||||
include(__DIR__.'/phpbb/controller/foo.php');
|
||||
}
|
||||
@@ -66,11 +66,11 @@ class phpbb_controller_controller_test extends phpbb_test_case
|
||||
$symfony_request = new Request();
|
||||
$symfony_request->attributes->set('_controller', 'foo.controller:handle');
|
||||
|
||||
$this->assertEquals($resolver->getController($symfony_request), array(new phpbb_ext_foo_controller, 'handle'));
|
||||
$this->assertEquals($resolver->getController($symfony_request), array(new foo\controller, 'handle'));
|
||||
|
||||
$symfony_request = new Request();
|
||||
$symfony_request->attributes->set('_controller', 'core_foo.controller:bar');
|
||||
|
||||
$this->assertEquals($resolver->getController($symfony_request), array(new phpbb_controller_foo, 'bar'));
|
||||
$this->assertEquals($resolver->getController($symfony_request), array(new phpbb\controller\foo, 'bar'));
|
||||
}
|
||||
}
|
||||
|
@@ -1,3 +1,3 @@
|
||||
services:
|
||||
foo.controller:
|
||||
class: phpbb_ext_foo_controller
|
||||
class: foo\controller
|
||||
|
@@ -1,8 +1,10 @@
|
||||
<?php
|
||||
|
||||
namespace foo;
|
||||
|
||||
use Symfony\Component\HttpFoundation\Response;
|
||||
|
||||
class phpbb_ext_foo_controller
|
||||
class controller
|
||||
{
|
||||
/**
|
||||
* Handle method
|
||||
|
Reference in New Issue
Block a user