/** * @param array|callable|FilterInterface $element * * @return Workflow * * @throws InvalidArgumentException */ public function addFilter($element) { $pipe = FilterPipe::createFilter($element); return $this->addPipe($pipe); }
/** * @test * @covers Plum\Plum\Pipe\FilterPipe::createFilter() * @covers Plum\Plum\Pipe\AbstractPipe::__construct() * @covers Plum\Plum\Pipe\AbstractPipe::getFilter() * @covers Plum\Plum\Pipe\AbstractPipe::setField() * @covers Plum\Plum\Pipe\AbstractPipe::getField() */ public function createFilterTakesFieldInArray() { /** @var \Plum\Plum\Filter\FilterInterface $filter */ $filter = Mockery::mock('\\Plum\\Plum\\Filter\\FilterInterface'); $pipe = FilterPipe::createFilter(['filter' => $filter, 'field' => 'foo']); $this->assertInstanceOf('\\Plum\\Plum\\Pipe\\FilterPipe', $pipe); $this->assertEquals('foo', $pipe->getField()); }