mq = new Task_MQ_Array(); $this->taskRunnerLocal = new Task_Runner_Local($this->mq); } protected function tearDown() { } public function testHere() { $service1 = 'TestTaskDemo.Update1'; $this->mq->add($service1, array('name' => 'phalapi')); $this->mq->add($service1, array('name' => 'net')); $service2 = 'TestTaskDemo.Update2'; $this->mq->add($service2, array('id' => 1)); $rs = $this->taskRunnerLocal->go($service1); $this->assertEquals(2, $rs['total']); $this->assertEquals(0, $rs['fail']); $rs = $this->taskRunnerLocal->go($service2); $this->assertEquals(1, $rs['total']); $this->assertEquals(1, $rs['fail']); $rs = $this->taskRunnerLocal->go('TestTaskDemo.Update3'); $this->assertEquals(0, $rs['total']); $this->assertEquals(0, $rs['fail']); } } class Api_TestTaskDemo extends PhalApi_Api { public function update1() { return array('code' => 0); } public function update2() { throw new PhalApi_Exception_InternalServerError('just for test'); } }