public function testchangePassword() { $plainTextPassword = '******'; $adminModel = new \Model_Admin(); $adminModel->loadBean(new \RedBeanPHP\OODBBean()); $eventsMock = $this->getMockBuilder('\\Box_EventManager')->getMock(); $eventsMock->expects($this->atLeastOnce())->method('fire'); $logMock = $this->getMockBuilder('\\Box_Log')->getMock(); $dbMock = $this->getMockBuilder('\\Box_Database')->getMock(); $dbMock->expects($this->atLeastOnce())->method('store'); $passwordMock = $this->getMockBuilder('\\Box_Password')->getMock(); $passwordMock->expects($this->atLeastOnce())->method('hashIt')->with($plainTextPassword); $di = new \Box_Di(); $di['events_manager'] = $eventsMock; $di['logger'] = $logMock; $di['db'] = $dbMock; $di['password'] = $passwordMock; $service = new \Box\Mod\Staff\Service(); $service->setDi($di); $result = $service->changePassword($adminModel, $plainTextPassword); $this->assertTrue($result); }