/** * @param SelectStatement|Subselect $AST * @param AclConditionStorage|SubRequestAclConditionStorage $aclCondition */ protected function addRequestConditions($AST, $aclCondition) { $whereConditions = $aclCondition->getWhereConditions(); if (count($whereConditions)) { $this->addAclToWhereClause($AST, $whereConditions); } $joinConditions = $aclCondition->getJoinConditions(); if (count($joinConditions)) { $this->addAclToJoinClause($AST, $joinConditions); } }
public function testStorage() { $whereConditions = [new AclCondition('test', 'id', [])]; $joinConditions = [new JoinAclCondition('testJoin', 'id', [])]; $subRequests = [new SubRequestAclConditionStorage([], [])]; $storage = new AclConditionStorage([], []); $this->assertTrue($storage->isEmpty()); $storage->setJoinConditions($joinConditions); $this->assertFalse($storage->isEmpty()); $storage->setJoinConditions([]); $storage->setWhereConditions($whereConditions); $this->assertFalse($storage->isEmpty()); $storage->setWhereConditions([]); $storage->setSubRequests($subRequests); $this->assertFalse($storage->isEmpty()); $storage->setWhereConditions($whereConditions); $storage->setJoinConditions($joinConditions); $this->assertEquals($whereConditions, $storage->getWhereConditions()); $this->assertEquals($joinConditions, $storage->getJoinConditions()); $this->assertEquals($subRequests, $storage->getSubRequests()); }