Plum\Plum\WorkflowTest::processShouldNotApplyValueConverterIfFilterReturnsFalseToReadItems PHP Метод

processShouldNotApplyValueConverterIfFilterReturnsFalseToReadItems() публичный Метод

    public function processShouldNotApplyValueConverterIfFilterReturnsFalseToReadItems()
    {
        $iterator = m::mock('\\Iterator');
        $iterator->shouldReceive('rewind');
        $iterator->shouldReceive('valid')->andReturn(true)->once();
        $iterator->shouldReceive('current')->andReturn(['foo' => 'foobar']);
        $iterator->shouldReceive('next');
        $iterator->shouldReceive('valid')->andReturn(false)->once();
        $reader = $this->getMockReader();
        $reader->shouldReceive('getIterator')->andReturn($iterator);
        $converter = $this->getMockConverter();
        $converter->shouldReceive('convert')->never();
        $filter = $this->getMockFilter();
        $filter->shouldReceive('filter')->with(['foo' => 'foobar'])->once()->andReturn(false);
        $this->workflow->addConverter(['field' => ['foo'], 'converter' => $converter, 'filter' => $filter]);
        $result = $this->workflow->process($reader);
        $this->assertEquals(1, $result->getReadCount());
    }
WorkflowTest