Exemplo n.º 1
0
 function it_cleans_up_dead_workers(SystemInterface $system, WorkerRegistryInterface $workerRegistry, WorkerInterface $worker, WorkerInterface $deadWorker1, WorkerInterface $deadWorker2, Process $workerProcess, Process $deadWorker1Process, Process $deadWorker2Process)
 {
     $system->getCurrentPid()->willReturn(2341);
     $system->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $workerRegistry->all()->shouldBeCalled()->willReturn(array($worker, $deadWorker1, $deadWorker2));
     $worker->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $worker->getProcess()->shouldBeCalled()->willReturn($workerProcess);
     $workerProcess->getPid()->shouldBeCalled()->willReturn(2341);
     $deadWorker1->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $deadWorker1->getProcess()->shouldBeCalled()->willReturn($deadWorker1Process);
     $deadWorker1Process->getPid()->shouldBeCalled()->willReturn('1');
     $deadWorker2->getHostname()->shouldBeCalled()->willReturn('foo1.resque.com');
     $deadWorker2->getProcess()->shouldBeCalled()->willReturn($deadWorker2Process);
     $deadWorker2Process->getPid()->shouldBeCalled()->willReturn('2');
     $workerRegistry->deregister($deadWorker1)->shouldBeCalled();
     $workerRegistry->deregister($deadWorker2)->shouldBeCalled();
     $workerRegistry->deregister($worker)->shouldNotBeCalled();
     $this->pruneDeadWorkers();
 }