Beispiel #1
0
 public function test_job_callable_execution_should_spread_events()
 {
     $this->given($mockED = new \mock\Symfony\Component\EventDispatcher\EventDispatcherInterface(), $mockED->getMockController()->hasListeners = true, $this->mockGenerator->orphanize('__construct'), $mockExecution = new \mock\Rezzza\Jobflow\Scheduler\ExecutionContext(), $mockExecution->getMockController()->write = true, $this->mockGenerator->orphanize('__construct'), $mockConfig = new \mock\Rezzza\Jobflow\JobConfig(), $mockConfig->getMockController()->getProcessorConfig = function () {
         return function ($e) {
             return $e->write('toto');
         };
     }, $mockConfig->getMockController()->getEventDispatcher = $mockED, $mockConfig->getMockController()->resolveExecOptions = ['jean' => 'marc'])->if($job = new TestedClass($mockConfig), $job->execute($mockExecution))->mock($mockExecution)->call('write')->withArguments('toto')->after($this->mock($mockED)->call('hasListeners')->withArguments('job.pre_execute')->once()->call('dispatch')->withArguments('job.pre_execute', new \Rezzza\Jobflow\Event\JobEvent($job, $mockExecution))->once())->before($this->mock($mockED)->call('hasListeners')->withArguments('job.post_execute')->once()->call('dispatch')->withArguments('job.post_execute', new \Rezzza\Jobflow\Event\JobEvent($job, $mockExecution))->once())->once();
 }
Beispiel #2
0
 public function test_it_should_execute_msg_with_execution_context_given()
 {
     $this->given($msg = $this->getMockMsg(), $jobflow = $this->getMockJobflow(), $job = $this->getMockJob(), $this->mockGenerator->orphanize('__construct'), $execution = new \mock\Rezzza\Jobflow\Scheduler\ExecutionContext(), $this->jobFactory->getMockController()->create = $job, $execution->getMockController()->execute = null, $this->executionFactory->getMockController()->create = $execution)->then($jobflow->executeMsg($msg, $execution))->mock($msg)->call('recoverJob')->never()->mock($this->jobFactory)->call('create')->never()->mock($msg)->call('execute')->withArguments($execution, $this->msgFactory)->once();
 }
Beispiel #3
0
 public function test_data_should_be_written()
 {
     $this->given($metadata = new \mock\Rezzza\Jobflow\Metadata\MetadataAccessor(), $transformer = new \mock\Knp\ETL\TransformerInterface(), $context = new \mock\Knp\ETL\ContextInterface(), $proxy = new \mock\Rezzza\Jobflow\Extension\ETL\Processor\TransformerProxy($transformer, $metadata), $proxy->getMockController()->transform[1] = 'call', $proxy->getMockController()->transform[2] = 'me', $proxy->getMockController()->transform[3] = 'maybe', $this->mockGenerator->orphanize('__construct'), $execution = new \mock\Rezzza\Jobflow\Scheduler\ExecutionContext(), $execution->getMockController()->read = [new JobData('jean', new Metadata()), new JobData('marc', new Metadata()), new JobData('ecureuil', new Metadata())], $execution->getMockController()->valid = true, $execution->getMockController()->write = true)->if($proxy->execute($execution))->mock($proxy)->call('transform')->withArguments('jean', new ETLProcessorContext($execution, new Metadata()))->once()->withArguments('marc', new ETLProcessorContext($execution, new Metadata()))->once()->withArguments('ecureuil', new ETLProcessorContext($execution, new Metadata()))->once()->mock($execution)->call('write')->withArguments('call', new Metadata())->once()->withArguments('me', new Metadata())->once()->withArguments('maybe', new Metadata())->once();
 }
Beispiel #4
0
 public function test_slice_should_extract_from_offset_while_valid()
 {
     $this->given($extractor = new \mock\Rezzza\Jobflow\Tests\Fixtures\DummyExtractor(), $extractor->getMockController()->valid = true, $extractor->getMockController()->valid[5] = false, $extractor->getMockController()->seek = true, $extractor->getMockController()->extract[1] = 'jean', $extractor->getMockController()->extract[2] = 'marc', $extractor->getMockController()->extract[3] = 'ecureuil', $extractor->getMockController()->extract[4] = 'chuck', $metadata = new \mock\Rezzza\Jobflow\Metadata\MetadataAccessor(), $this->mockGenerator->orphanize('__construct'), $execution = new \mock\Rezzza\Jobflow\Scheduler\ExecutionContext(), $execution->getMockController()->getOffset = 15, $execution->getMockController()->getLimit = 5, $proxy = new \mock\Rezzza\Jobflow\Extension\ETL\Processor\ExtractorProxy($extractor, $metadata))->if($result = $proxy->slice($execution, new \Rezzza\Jobflow\Metadata\Metadata()))->mock($extractor)->call('extract')->exactly(4)->call('seek')->withArguments(15)->once()->array($result)->isEqualTo(array('jean', 'marc', 'ecureuil', 'chuck'));
 }
Beispiel #5
0
 public function test_requeue_should_not_rewind_data()
 {
     $this->given($loader = new \mock\Knp\ETL\LoaderInterface(), $accessor = new \mock\Rezzza\Jobflow\Metadata\MetadataAccessor(), $this->mockGenerator->orphanize('__construct'), $execution = new \mock\Rezzza\Jobflow\Scheduler\ExecutionContext(), $execution->getMockController()->read = [], $execution->getMockController()->getJobOption[1] = null, $execution->getMockController()->getJobOption[2] = false, $execution->getMockController()->rewindData = true, $proxy = new \mock\Rezzza\Jobflow\Extension\ETL\Processor\LoaderProxy($loader, $accessor))->if($proxy->execute($execution))->mock($execution)->call('rewindData')->once();
 }