function test_addHaving() { // which companies has more than one worker one the same place and the company_id must be greater than 1 $userIds = array(); $user = new tests_Common(TABLE_USER); $newData = array('login' => 'hans', 'password' => '0', 'name' => 'Hans Dampf', 'address_id' => 1, 'company_id' => 1); $userIds[] = $user->add($newData); $newData = array('login' => 'rudi', 'password' => '0', 'name' => 'Rudi Ratlos', 'address_id' => 1, 'company_id' => 1); $userIds[] = $user->add($newData); $newData = array('login' => 'susi', 'password' => '0', 'name' => 'Susi Sorglos', 'address_id' => 2, 'company_id' => 3); $userIds[] = $user->add($newData); $newData = array('login' => 'lieschen', 'password' => '0', 'name' => 'Lieschen Mueller', 'address_id' => 3, 'company_id' => 5); $userIds[] = $user->add($newData); $newData = array('login' => 'werner', 'password' => '0', 'name' => 'Werner Lehmann', 'address_id' => 3, 'company_id' => 5); $userIds[] = $user->add($newData); $user->setGroup('company_id,address_id'); $user->setHaving('COUNT(address_id) > 1'); $user->addHaving('company_id > 1'); $this->assertEquals(array(5), $user->getCol('company_id')); // first test $user->reset(); $user->setGroup('company_id,address_id'); $user->addHaving('COUNT(address_id) > 1'); // this is not correct but must also work. $user->addHaving('company_id > 1'); $this->assertEquals(array(5), $user->getCol('company_id')); // second test }