eZ\Publish\Core\REST\Server\Tests\Input\Parser\QueryParserTest::testDispatchMoreThanOneFilter PHP Method

testDispatchMoreThanOneFilter() public method

    public function testDispatchMoreThanOneFilter()
    {
        $inputArray = array('Filter' => ['ContentTypeIdentifierCriterion' => 'article', 'ParentLocationIdCriterion' => 762], 'Criteria' => [], 'Query' => []);
        $parsingDispatcher = $this->getParsingDispatcherMock();
        $parsingDispatcher->expects($this->at(0))->method('parse')->with(['ContentTypeIdentifierCriterion' => 'article'])->will($this->returnValue(new Query\Criterion\ContentTypeIdentifier('article')));
        $parsingDispatcher->expects($this->at(1))->method('parse')->with(['ParentLocationIdCriterion' => 762])->will($this->returnValue(new Query\Criterion\ParentLocationId(762)));
        $parser = $this->getParser();
        $result = $parser->parse($inputArray, $parsingDispatcher);
        $expectedQuery = new Query();
        $expectedQuery->filter = new Query\Criterion\LogicalAnd([new Query\Criterion\ContentTypeIdentifier('article'), new Query\Criterion\ParentLocationId(762)]);
        $this->assertEquals($expectedQuery, $result);
    }