protected function _executeTestsNormal() { //Count calculations $rowcount = Personnes::count(); $this->assertEquals($rowcount, 2180); $rowcount = Personnes::count(array('distinct' => 'estado')); $this->assertEquals($rowcount, 2); $rowcount = Personnes::count("estado='A'"); $this->assertEquals($rowcount, 2178); $group = Personnes::count(array("group" => "estado")); $this->assertEquals(2, count($group)); $group = Personnes::count(array("group" => "estado", "order" => "estado")); $this->assertEquals(2, count($group)); $results = array('A' => 2178, 'I' => 2); foreach ($group as $row) { $this->assertEquals($results[$row->estado], $row->rowcount); } $this->assertEquals($group[0]->rowcount, 2178); $this->assertEquals($group[1]->rowcount, 2); $group = Personnes::count(array("group" => "estado")); $this->assertEquals(2, count($group)); $group = Personnes::count(array("group" => "ciudad_id")); $this->assertEquals(285, count($group)); $group = Personnes::count(array("group" => "ciudad_id", "order" => "rowcount DESC")); $this->assertEquals($group[0]->rowcount, 727); //Summatory $total = Personnes::sum(array("column" => "cupo")); $this->assertEquals(995066020.0, $total); $total = Personnes::sum(array("column" => "cupo", "conditions" => "estado='I'")); $this->assertEquals(567020.0, $total); $group = Personnes::sum(array("column" => "cupo", "group" => "estado")); $this->assertEquals(2, count($group)); $results = array('A' => 994499000.0, 'I' => 567020.0); foreach ($group as $row) { $this->assertEquals($results[$row->estado], $row->sumatory); } $group = Personnes::sum(array("column" => "cupo", "group" => "ciudad_id", "order" => "sumatory DESC")); $this->assertEquals($group[0]->sumatory, 358467690.0); //Average $total = Personnes::average(array("column" => "cupo")); $this->assertEquals(456452.3, sprintf("%.2f", $total)); $total = Personnes::average(array("column" => "cupo", "conditions" => "estado='I'")); $this->assertEquals(283510.0, $total); $group = Personnes::average(array("column" => "cupo", "group" => "estado")); $this->assertEquals(2, count($group)); $results = array('A' => 456611.11, 'I' => 283510.0); foreach ($group as $row) { $this->assertEquals($results[$row->estado], sprintf("%.2f", $row->average)); } $group = Personnes::average(array("column" => "cupo", "group" => "ciudad_id", "order" => "average DESC")); $this->assertEquals($group[0]->average, 996200.0); //Maximum $max = Personnes::maximum(array("column" => "ciudad_id")); $this->assertEquals($max, 302172); $max = Personnes::maximum(array("column" => "ciudad_id", "conditions" => "estado='I'")); $this->assertEquals($max, 127591); $group = Personnes::maximum(array("column" => "ciudad_id", "group" => "estado")); $this->assertEquals(2, count($group)); $results = array('A' => 302172, 'I' => 127591); foreach ($group as $row) { $this->assertEquals($results[$row->estado], $row->maximum); } $group = Personnes::maximum(array("column" => "ciudad_id", "group" => "estado", "order" => "maximum DESC")); $this->assertEquals($group[0]->maximum, 302172); //Minimum $max = Personnes::minimum(array("column" => "ciudad_id")); $this->assertEquals($max, 20404); $max = Personnes::minimum(array("column" => "ciudad_id", "conditions" => "estado='I'")); $this->assertEquals($max, 127591); $group = Personnes::minimum(array("column" => "ciudad_id", "group" => "estado")); $this->assertEquals(2, count($group)); $results = array('A' => 20404, 'I' => 127591); foreach ($group as $row) { $this->assertEquals($results[$row->estado], $row->minimum); } $group = Personnes::minimum(array("column" => "ciudad_id", "group" => "estado", "order" => "minimum DESC")); $this->assertEquals($group[0]->minimum, 127591); $group = Personnes::minimum(array("column" => "ciudad_id", "group" => "estado", "order" => "minimum ASC")); $this->assertEquals($group[0]->minimum, 20404); }