/** * @inheritdoc */ public function retrieve($queue) { $this->beanstalk->watch($queue); $this->beanstalk->ignore('default'); $data = $this->beanstalk->reserve($this->retrieveTimeout); if ($data === false) { return false; } return JobFactory::createFromRaw($data); }
/** * @param mixed $jobData * @dataProvider jobDataMaintainsExpectedTypeDataProvider */ public function testJobDataMaintainsExpectedType($jobData) { $package = JobFactory::serializeBody(new Job('TestQueue', $jobData)); $this->beanstalk->expects($this->any())->method('reserve')->will($this->returnValue(['id' => 234, 'body' => $package])); $job = $this->jobQueue->retrieve('TestQueue'); $this->assertEquals($jobData, $job->getBody()); }