function testComplexCriteriaIsSurroundedWithParenthesis() { $a = new lmbSQLCriteria('a'); $b = new lmbSQLCriteria('b'); $c = new lmbSQLCriteria('c'); $a->add($b->add($c)); $this->assertEqual($a->toStatementString(), 'a AND (b AND c)'); }
function testFindWithKind() { $valid_object1 = new BarFooOneTableTestObject(); $valid_object1->setTitle('title1'); $valid_object1->save(); $valid_object2 = new BarFooOneTableTestObject(); $valid_object2->setTitle('title2'); $valid_object2->save(); $wrong_class_object = new FooOneTableTestObject(); $wrong_class_object->setTitle('title1'); $wrong_class_object->save(); $wrong_title_object = new FooOneTableTestObject(); $wrong_title_object->setTitle('wrong_title'); $wrong_title_object->save(); $criteria = new lmbSQLCriteria(); $criteria->add(lmbSQLCriteria::equal('title', 'title1')); $criteria->addOr(lmbSQLCriteria::equal('title', 'title2')); $records = lmbActiveRecord::find('BarFooOneTableTestObject', $criteria)->sort(array('id'))->getArray(); $this->assertEqual(count($records), 2); $this->assertEqual($records[0]->title, $valid_object1->title); $this->assertEqual($records[1]->title, $valid_object2->title); }