private function buildQueryForConjunction(Conjunction $conjunction, PropertyId $propertyId = null) { $parameters = []; foreach ($conjunction->getDescriptions() as $description) { $parameters[] = $this->buildQueryForDescription($description, $propertyId); } return new AndQuery($parameters); }
/** * @dataProvider instanceProvider * * @since 1.0 * * @param Conjunction $description */ public function testGetDescriptions(Conjunction $description) { $descriptions = $description->getDescriptions(); $this->assertInternalType('array', $descriptions); foreach ($descriptions as $subInstance) { $this->assertInstanceOf('Ask\\Language\\Description\\Description', $subInstance); } $newInstance = new Disjunction($descriptions); $this->assertEquals($descriptions, $newInstance->getDescriptions(), 'Descriptions are returned as it was passed to the constructor'); }
private function buildQueryForConjunction(Conjunction $conjunction, Expr $expr, PropertyId $currentProperty = null) { foreach ($conjunction->getDescriptions() as $description) { $expr->addAnd($this->buildQueryForDescription($description, new Expr(), $currentProperty)); } return $expr; }