/** * @param CM_Cli_Command $commandMock * @param string|null $errorMessageExpected * @return PHPUnit_Framework_MockObject_MockObject */ protected function _getCommandManagerMock($commandMock, $errorMessageExpected = null) { $keepAliveExpected = $commandMock->getKeepalive(); $processMock = $this->_getProcessMock($keepAliveExpected); $mockBuilder = $this->getMockBuilder('CM_Cli_CommandManager'); $mockBuilder->setMethods(['getCommands', '_getProcess', '_findLock', '_lockCommand', 'unlockCommand', '_outputError', '_checkUnusedArguments']); $commandManagerMock = $mockBuilder->getMock(); $commandManagerMock->expects($this->any())->method('getCommands')->will($this->returnValue(array($commandMock))); if (null === $errorMessageExpected) { $commandManagerMock->expects($this->never())->method('_outputError'); } else { $commandManagerMock->expects($this->once())->method('_outputError')->with($errorMessageExpected); } $commandManagerMock->expects($this->any())->method('_getProcess')->will($this->returnValue($processMock)); $commandManagerMock->expects($this->any())->method('_checkUnusedArguments'); return $commandManagerMock; }
/** * @param CM_Cli_Command $command */ protected function _lockCommand(CM_Cli_Command $command) { $commandName = $command->getName(); $process = $this->_getProcess(); $hostId = $process->getHostId(); $processId = $process->getProcessId(); $timeoutStamp = time() + self::TIMEOUT; CM_Db_Db::insert('cm_cli_command_manager_process', array('commandName' => $commandName, 'hostId' => $hostId, 'processId' => $processId, 'timeoutStamp' => $timeoutStamp)); }