diff --git a/src/bb-modules/System/Api/Admin.php b/src/bb-modules/System/Api/Admin.php index 3ed5490ce..64a58e45a 100644 --- a/src/bb-modules/System/Api/Admin.php +++ b/src/bb-modules/System/Api/Admin.php @@ -146,7 +146,8 @@ class Admin extends \Api_Abstract } $f = isset($data['f']) ? $data['f'] : null; - return $this->getService()->staffHasPermissions($this->getIdentity(), $data['mod'], $f); + $service = $this->di['mod_service']('Staff'); + return $service->hasPermission($this->getIdentity(), $data['mod'], $f); } /** diff --git a/src/bb-modules/System/Service.php b/src/bb-modules/System/Service.php index 7ab17d0f4..682680432 100644 --- a/src/bb-modules/System/Service.php +++ b/src/bb-modules/System/Service.php @@ -360,12 +360,6 @@ class Service return $data; } - public function staffHasPermissions($identity, $module, $f = null) - { - $service = $this->di['mod_service']('staff'); - return $service->hasPermission($identity, $module, $f); - } - public function getCurrentUrl() { $request = $this->di['request']; diff --git a/tests/bb-modules/System/Api/AdminTest.php b/tests/bb-modules/System/Api/AdminTest.php index b1adc7380..3c3edc470 100644 --- a/tests/bb-modules/System/Api/AdminTest.php +++ b/tests/bb-modules/System/Api/AdminTest.php @@ -189,12 +189,19 @@ class AdminTest extends \PHPUnit_Framework_TestCase { 'mod' => 'extension', ); - $servuceMock = $this->getMockBuilder('\Box\Mod\System\Service')->getMock(); - $servuceMock->expects($this->atLeastOnce()) - ->method('staffHasPermissions') + $staffServiceMock = $this->getMockBuilder('\Box\Mod\Staff\Service')->getMock(); + $staffServiceMock->expects($this->atLeastOnce()) + ->method('hasPermission') ->will($this->returnValue(true)); - $this->api->setService($servuceMock); + $di = new \Box_Di(); + $di['mod_service'] = $di->protect(function($serviceName) use($staffServiceMock){ + if ($serviceName == 'Staff'){ + return $staffServiceMock; + } + return false; + }); + $this->api->setDi($di); $result = $this->api->is_allowed($data); $this->assertInternalType('bool', $result); diff --git a/tests/bb-modules/System/ServiceTest.php b/tests/bb-modules/System/ServiceTest.php index a96592fa6..c63de4cf8 100644 --- a/tests/bb-modules/System/ServiceTest.php +++ b/tests/bb-modules/System/ServiceTest.php @@ -299,23 +299,6 @@ class ServiceTest extends \PHPUnit_Framework_TestCase { $this->assertTrue($result); } - public function teststaffHasPermissions() - { - - $staffServiceMock = $this->getMockBuilder('\Box\Mod\Staff\Service')->getMock(); - $staffServiceMock->expects($this->atLeastOnce()) - ->method('hasPermission') - ->will($this->returnValue(true)); - - $di = new \Box_Di(); - $di['mod_service'] = $di->protect(function () use($staffServiceMock) {return $staffServiceMock;}); - - $this->service->setDi($di); - $result = $this->service->staffHasPermissions(new \Model_Client(), 'extension'); - $this->assertInternalType('bool', $result); - $this->assertTrue($result); - } - public function testgetCurrentUrl() { $requestMock = $this->getMockBuilder('\Box_Request')->getMock();