public function _executeTestsRenamed($di) { $manager = $di->getShared('modelsManager'); $success = $manager->existsBelongsTo('RobottersDeles', 'Robotters'); $this->assertTrue($success); $success = $manager->existsBelongsTo('RobottersDeles', 'Deles'); $this->assertTrue($success); $success = $manager->existsHasMany('Robotters', 'RobottersDeles'); $this->assertTrue($success); $success = $manager->existsHasMany('Deles', 'RobottersDeles'); $this->assertTrue($success); $robotter = Robotters::findFirst(); $this->assertNotEquals($robotter, false); $robottersDeles = $robotter->getRobottersDeles(); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 3); /** Passing parameters to magic methods **/ $robottersDeles = $robotter->getRobottersDeles("delesCode = 1"); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 1); $robottersDeles = $robotter->getRobottersDeles(array("delesCode > :delesCode:", "bind" => array("delesCode" => 1))); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 2); $this->assertEquals($robottersDeles->getFirst()->delesCode, 2); $robottersDeles = $robotter->getRobottersDeles(array("delesCode > :delesCode:", "bind" => array("delesCode" => 1), "order" => "delesCode DESC")); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 2); $this->assertEquals($robottersDeles->getFirst()->delesCode, 3); /** Magic counting */ $number = $robotter->countRobottersDeles(); $this->assertEquals($number, 3); $dele = Deles::findFirst(); $this->assertNotEquals($dele, false); $robottersDeles = $dele->getRobottersDeles(); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 1); $number = $dele->countRobottersDeles(); $this->assertEquals($number, 1); $robotterDele = RobottersDeles::findFirst(); $this->assertNotEquals($robotterDele, false); $robotter = $robotterDele->getRobotters(); $this->assertEquals(get_class($robotter), 'Robotters'); $dele = $robotterDele->getDeles(); $this->assertEquals(get_class($dele), 'Deles'); /** Relations in namespaced models */ $robotter = Some\Robotters::findFirst(); $this->assertNotEquals($robotter, false); $robottersDeles = $robotter->getRobottersDeles(); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 3); $robottersDeles = $robotter->getRobottersDeles("delesCode = 1"); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 1); $robottersDeles = $robotter->getRobottersDeles(array("delesCode > :delesCode:", "bind" => array("delesCode" => 1), "order" => "delesCode DESC")); $this->assertEquals(get_class($robottersDeles), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $this->assertEquals(count($robottersDeles), 2); $this->assertEquals($robottersDeles->getFirst()->delesCode, 3); }
public function _executeTestsRenamed($di) { //Normal foreign keys with column renaming $robottersDeles = new RobottersDeles(); $robottersDeles->robottersCode = 1; $robottersDeles->delesCode = 100; $this->assertFalse($robottersDeles->save()); $messages = array(0 => Phalcon\Mvc\Model\Message::__set_state(array('_type' => 'ConstraintViolation', '_message' => 'Value of field "delesCode" does not exist on referenced table', '_field' => 'delesCode'))); $this->assertEquals($robottersDeles->getMessages(), $messages); $robottersDeles->robottersCode = 100; $robottersDeles->delesCode = 1; $this->assertFalse($robottersDeles->save()); $messages = array(0 => Phalcon\Mvc\Model\Message::__set_state(array('_type' => 'ConstraintViolation', '_message' => 'The robotters code does not exist', '_field' => 'robottersCode'))); $this->assertEquals($robottersDeles->getMessages(), $messages); //Reverse foreign keys with renaming $robotter = Robotters::findFirst(); $this->assertNotEquals($robotter, false); $this->assertFalse($robotter->delete()); $messages = array(0 => Phalcon\Mvc\Model\Message::__set_state(array('_type' => 'ConstraintViolation', '_message' => 'Record is referenced by model RobottersDeles', '_field' => 'code'))); $this->assertEquals($robotter->getMessages(), $messages); $dele = Deles::findFirst(); $this->assertNotEquals($dele, false); $this->assertFalse($dele->delete()); $messages = array(0 => Phalcon\Mvc\Model\Message::__set_state(array('_type' => 'ConstraintViolation', '_message' => 'Deles cannot be deleted because is referenced by a Robotter', '_field' => 'code'))); $this->assertEquals($dele->getMessages(), $messages); }