/** * static task getter * * @param string $_type * @param array $_requestOptions * @param array $_taskOptions * @return Tinebase_Scheduler_Task */ public static function getPreparedTask($_type, array $_requestOptions, array $_taskOptions = array()) { $request = new Zend_Controller_Request_Simple(); $request->setControllerName($_requestOptions['controller']); $request->setActionName($_requestOptions['action']); if (isset($_requestOptions['params']) || array_key_exists('params', $_requestOptions)) { foreach ($_requestOptions['params'] as $key => $value) { $request->setParam($key, $value); } } $task = new Tinebase_Scheduler_Task($_taskOptions); $task->setMonths("Jan-Dec"); $task->setWeekdays("Sun-Sat"); $task->setDays("1-31"); $task->setRequest($request); switch ($_type) { case self::TASK_TYPE_MINUTELY: $task->setHours("0-23"); $task->setMinutes("0/1"); break; case self::TASK_TYPE_HOURLY: $task->setHours("0-23"); $task->setMinutes("0"); break; case self::TASK_TYPE_DAILY: $task->setHours("0"); $task->setMinutes("0"); break; } return $task; }
public function testMagicCallProxiesToRepositoryMethod() { $model = new Waf_Model(); $model->register(); $model->setEntityManager(new Waf_Zend_Controller_Action_Helper_RepositoryTest_TestEntityManager()); $request = new Zend_Controller_Request_Simple(); $request->setControllerName('test'); $request->setModuleName('default'); Zend_Controller_Front::getInstance()->setRequest($request); $this->assertType('Waf_Zend_Controller_Action_Helper_RepositoryTest_TestRepository', $this->repositoryHelper->testMagicCall()); }
/** * Tests if a task can be saved. */ public function testSaveTask() { $this->testClearQueue(); $request = new Zend_Controller_Request_Simple(); $request->setControllerName('Tinebase_Alarm'); $request->setActionName('sendPendingAlarms'); $request->setParam('eventName', 'Tinebase_Event_Async_Minutely'); $task = Zend_Scheduler_Task::getTask()->setMonths("Jan-Dec")->setWeekdays("Sun-Sat")->setDays("1-31")->setHours("0-23")->setMinutes("0/1")->setRequest($request); $this->_scheduler->addTask('Tinebase_Alarm_Test', $task); $this->_scheduler->saveTask(); $tasks = $this->_scheduler->getBackend()->loadQueue(); $this->assertEquals(1, count($tasks)); }
{ } public function route(Zend_Controller_Request_Abstract $dispatcher) { } } try { $opts = new Zend_Console_Getopt(array('help|h' => 'Displays usage information.', 'action|a=s' => 'Action to perform in format of module.controller.action', 'verbose|v' => 'Verbose messages will be dumped to the default output.', 'development|d' => 'Enables development mode.')); $opts->parse(); } catch (Zend_Console_Getopt_Exception $e) { exit($e->getMessage() . "\n\n" . $e->getUsageMessage()); } if (isset($opts->h)) { echo $opts->getUsageMessage(); exit; } if (isset($opts->a)) { $reqRoute = array_reverse(explode('::', $opts->a)); @(list($action, $controller) = $reqRoute); $request = new Zend_Controller_Request_Simple(); $request->setControllerName($controller); $request->setActionName($action); $request->setModuleName('default'); $front = Zend_Controller_Front::getInstance(); $front->setRequest($request); $front->setRouter(new RouterCli()); $front->setResponse(new Zend_Controller_Response_Cli()); $front->throwExceptions(true); $front->addModuleDirectory(APPLICATION_PATH . '/modules/'); $front->dispatch(); }
/** * @see ZF-2887 */ public function testGetControllerClassThrowsExceptionIfNoDefaultModuleDefined() { $this->_dispatcher->setControllerDirectory(array()); $request = new Zend_Controller_Request_Simple(); $request->setControllerName('empty'); try { $class = $this->_dispatcher->getControllerClass($request); } catch (Zend_Controller_Exception $e) { $this->assertContains('No default module', $e->getMessage()); } }
/** * update to 3.8 * - schedulers */ public function update_7() { $declaration = new Setup_Backend_Schema_Table_Xml(' <table> <name>scheduler</name> <version>1</version> <declaration> <field> <name>id</name> <type>integer</type> <length>11</length> <autoincrement>true</autoincrement> <notnull>true</notnull> </field> <field> <name>name</name> <type>text</type> <length>255</length> <notnull>true</notnull> </field> <field> <name>data</name> <type>text</type> <notnull>true</notnull> </field> <index> <name>id</name> <primary>true</primary> <field> <name>id</name> </field> </index> </declaration> </table>'); try { $this->_backend->createTable($declaration); Tinebase_Application::getInstance()->addApplicationTable(Tinebase_Application::getInstance()->getApplicationByName('Tinebase'), 'scheduler', 1); } catch (Zend_Db_Statement_Exception $zdse) { // do nothing } $request = new Zend_Controller_Request_Simple(); $request->setControllerName('Tinebase_Alarm'); $request->setActionName('sendPendingAlarms'); $request->setParam('eventName', 'Tinebase_Event_Async_Minutely'); $task = new Tinebase_Scheduler_Task(); $task->setMonths("Jan-Dec"); $task->setWeekdays("Sun-Sat"); $task->setDays("1-31"); $task->setHours("0-23"); $task->setMinutes("0/1"); $task->setRequest($request); $scheduler = Tinebase_Core::getScheduler(); $scheduler->addTask('Tinebase_Alarm', $task); $scheduler->saveTask(); $this->setApplicationVersion('Tinebase', '3.8'); }
public function testLoadClassLoadsControllerInDefaultModuleWithModulePrefixWhenRequested() { Zend_Controller_Front::getInstance() ->setDispatcher($this->_dispatcher) ->addModuleDirectory(dirname(__FILE__) . '/../_files/modules'); $this->_dispatcher->setDefaultModule('foo') ->setParam('prefixDefaultModule', true); $request = new Zend_Controller_Request_Simple(); $request->setControllerName('index'); $class = $this->_dispatcher->getControllerClass($request); $this->assertEquals('IndexController', $class); $test = $this->_dispatcher->loadClass($class); $this->assertEquals('Foo_IndexController', $test); $this->assertTrue(class_exists($test)); }