public function testSimpleCondition() { $condition = ['field' => 1, 'field2' => 2, 'field3' => ['field3' => 3, 'field4' => 4], 'field3a' => [3, 4], 'field5' => ['Lt' => ['asd', 1, 2, 3]], 'field6' => ['Lt' => 1], 'field7' => ['Lt' => 8], 'field8' => ['Gt' => ['asd', 1, 2, 3]], 'field9' => ['Gt' => 3], 'field10' => ['Gt' => 'ololo'], 'field11' => ['nEq' => ['asd', 1, 2, 3]], 'field12' => ['nEq' => 'asd'], 'field15' => ['LiKe' => 'asd']]; $conditionBuilder = new FilterGroupConditionBuilder(); $conditionBuilder->setConditions($condition); $conditions = $conditionBuilder->build(); $expect = [EqCondition::create('field', 1), EqCondition::create('field2', 2), InqCondition::create('field3a', [3, 4]), LtCondition::create('field6', 1), LtCondition::create('field7', 8), GtCondition::create('field9', 3), NeqCondition::create('field12', 'asd'), LikeCondition::create('field15', 'asd')]; $this->assertEquals($expect, $conditions->getConditions()); $this->assertEquals(FilterCondition::CONDITION_AND, $conditionBuilder->getGroup()); }