/** * Show the form for creating a new resource. * @param Request $request * @return Response */ public function postDesv(Request $request) { $ids = $request->get('people'); if ($ids != null) { $branch = Branch::findOrFail($request->get('branch')); $branch->people()->detach($ids); for ($i = 0; $i < count($ids); $i++) { $user = People::find($ids[$i])->user; $user->roles()->detach(); } flash()->success('Se han desviculado (' . count($ids) . ') personas de la sucursal ' . $branch->name); } else { $branch = Branch::findOrFail($request->get('branch')); flash()->overlay('No se encontraron personas para desvincular de la sucursal ' . $branch->name . '.', 'Notificacion de errores'); } return view('admin.showpeople', compact('branch')); }
protected function _executeTestsNormal($di) { $this->_prepareDb($di->getShared('db')); //Count tests $this->assertEquals(People::count(), Personas::count()); $params = array(); $this->assertEquals(People::count($params), Personas::count($params)); $params = array("estado='I'"); $this->assertEquals(People::count($params), Personas::count($params)); $params = "estado='I'"; $this->assertEquals(People::count($params), Personas::count($params)); $params = array("conditions" => "estado='I'"); $this->assertEquals(People::count($params), Personas::count($params)); //Find first $people = People::findFirst(); $this->assertTrue(is_object($people)); $this->assertEquals(get_class($people), 'People'); $persona = Personas::findFirst(); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $people = People::findFirst("estado='I'"); $this->assertTrue(is_object($people)); $persona = Personas::findFirst("estado='I'"); $this->assertTrue(is_object($persona)); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $people = People::findFirst(array("estado='I'")); $persona = Personas::findFirst(array("estado='I'")); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $params = array("conditions" => "estado='I'"); $people = People::findFirst($params); $persona = Personas::findFirst($params); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $params = array("conditions" => "estado='A'", "order" => "nombres"); $people = People::findFirst($params); $persona = Personas::findFirst($params); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $params = array("estado='A'", "order" => "nombres DESC", "limit" => 30); $people = People::findFirst($params); $persona = Personas::findFirst($params); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $params = array("estado=?1", "bind" => array(1 => 'A'), "order" => "nombres DESC", "limit" => 30); $people = People::findFirst($params); $persona = Personas::findFirst($params); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $params = array("estado=:estado:", "bind" => array("estado" => 'A'), "order" => "nombres DESC", "limit" => 30); $people = People::findFirst($params); $persona = Personas::findFirst($params); $this->assertEquals($people->nombres, $persona->nombres); $this->assertEquals($people->estado, $persona->estado); $robot = Robots::findFirst(1); $this->assertEquals(get_class($robot), 'Robots'); //Find tests $personas = Personas::find(); $people = People::find(); $this->assertEquals(count($personas), count($people)); $personas = Personas::find("estado='I'"); $people = People::find("estado='I'"); $this->assertEquals(count($personas), count($people)); $personas = Personas::find(array("estado='I'")); $people = People::find(array("estado='I'")); $this->assertEquals(count($personas), count($people)); $personas = Personas::find(array("estado='A'", "order" => "nombres")); $people = People::find(array("estado='A'", "order" => "nombres")); $this->assertEquals(count($personas), count($people)); $personas = Personas::find(array("estado='A'", "order" => "nombres", "limit" => 100)); $people = People::find(array("estado='A'", "order" => "nombres", "limit" => 100)); $this->assertEquals(count($personas), count($people)); $params = array("estado=?1", "bind" => array(1 => "A"), "order" => "nombres", "limit" => 100); $personas = Personas::find($params); $people = People::find($params); $this->assertEquals(count($personas), count($people)); $params = array("estado=:estado:", "bind" => array("estado" => "A"), "order" => "nombres", "limit" => 100); $personas = Personas::find($params); $people = People::find($params); $this->assertEquals(count($personas), count($people)); $number = 0; $peoples = Personas::find(array("conditions" => "estado='A'", "order" => "nombres", "limit" => 20)); foreach ($peoples as $people) { $number++; } $this->assertEquals($number, 20); $persona = new Personas($di); $persona->cedula = 'CELL' . mt_rand(0, 999999); $this->assertFalse($persona->save()); //Messages $this->assertEquals(count($persona->getMessages()), 4); $messages = array(0 => ModelMessage::__set_state(array('_type' => 'PresenceOf', '_message' => 'tipo_documento_id is required', '_field' => 'tipo_documento_id')), 1 => ModelMessage::__set_state(array('_type' => 'PresenceOf', '_message' => 'nombres is required', '_field' => 'nombres')), 2 => ModelMessage::__set_state(array('_type' => 'PresenceOf', '_message' => 'cupo is required', '_field' => 'cupo')), 3 => ModelMessage::__set_state(array('_type' => 'PresenceOf', '_message' => 'estado is required', '_field' => 'estado'))); $this->assertEquals($persona->getMessages(), $messages); //Save $persona = new Personas($di); $persona->cedula = 'CELL' . mt_rand(0, 999999); $persona->tipo_documento_id = 1; $persona->nombres = 'LOST'; $persona->telefono = '1'; $persona->cupo = 20000; $persona->estado = 'A'; $this->assertTrue($persona->save()); $persona = new Personas($di); $persona->cedula = 'CELL' . mt_rand(0, 999999); $persona->tipo_documento_id = 1; $persona->nombres = 'LOST LOST'; $persona->telefono = '2'; $persona->cupo = 0; $persona->estado = 'X'; $this->assertTrue($persona->save()); //Check correct save $persona = Personas::findFirst(array("estado='X'")); $this->assertNotEquals($persona, false); $this->assertEquals($persona->nombres, 'LOST LOST'); $this->assertEquals($persona->estado, 'X'); //Update $persona->cupo = 150000; $persona->telefono = '123'; $this->assertTrue($persona->update()); //Checking correct update $persona = Personas::findFirst(array("estado='X'")); $this->assertNotEquals($persona, false); $this->assertEquals($persona->cupo, 150000); $this->assertEquals($persona->telefono, '123'); //Update $this->assertTrue($persona->update(array('nombres' => 'LOST UPDATE', 'telefono' => '2121'))); //Checking correct update $persona = Personas::findFirst(array("estado='X'")); $this->assertNotEquals($persona, false); $this->assertEquals($persona->nombres, 'LOST UPDATE'); $this->assertEquals($persona->telefono, '2121'); //Create $persona = new Personas($di); $persona->cedula = 'CELL' . mt_rand(0, 999999); $persona->tipo_documento_id = 1; $persona->nombres = 'LOST CREATE'; $persona->telefono = '1'; $persona->cupo = 21000; $persona->estado = 'A'; $this->assertTrue($persona->create()); $persona = new Personas($di); $this->assertTrue($persona->create(array('cedula' => 'CELL' . mt_rand(0, 999999), 'tipo_documento_id' => 1, 'nombres' => 'LOST CREATE', 'telefono' => '1', 'cupo' => 21000, 'estado' => 'A'))); //Grouping $difEstados = People::count(array("distinct" => "estado")); $this->assertEquals($difEstados, 3); $group = People::count(array("group" => "estado")); $this->assertEquals(count($group), 3); //Deleting $before = People::count(); $this->assertTrue($persona->delete()); $this->assertEquals($before - 1, People::count()); //Assign $persona = new Personas(); $persona->assign(array('tipo_documento_id' => 1, 'nombres' => 'LOST CREATE', 'telefono' => '1', 'cupo' => 21000, 'estado' => 'A', 'notField' => 'SOME VALUE')); $expected = array('cedula' => NULL, 'tipo_documento_id' => 1, 'nombres' => 'LOST CREATE', 'telefono' => '1', 'direccion' => NULL, 'email' => NULL, 'fecha_nacimiento' => NULL, 'ciudad_id' => NULL, 'creado_at' => NULL, 'cupo' => 21000, 'estado' => 'A'); $this->assertEquals($persona->toArray(), $expected); //Refresh $persona = Personas::findFirst(); $personaData = $persona->toArray(); $persona->assign(array('tipo_documento_id' => 1, 'nombres' => 'LOST CREATE', 'telefono' => '1', 'cupo' => 21000, 'estado' => 'A', 'notField' => 'SOME VALUE')); $persona->refresh(); $this->assertEquals($personaData, $persona->toArray()); // Issue 1314 $parts = new Parts2(); $parts->save(); }
protected function _executeTestsNormal($di) { //Where $personas = Personas::query()->where("estado='I'")->execute(); $people = People::find("estado='I'"); $this->assertEquals(count($personas), count($people)); $personas = Personas::query()->conditions("estado='I'")->execute(); $people = People::find("estado='I'"); $this->assertEquals(count($personas), count($people)); $personas = Personas::query()->where("estado='A'")->orderBy("nombres")->execute(); $people = People::find(array("estado='A'", "order" => "nombres")); $this->assertEquals(count($personas), count($people)); $somePersona = $personas->getFirst(); $somePeople = $people->getFirst(); $this->assertEquals($somePersona->cedula, $somePeople->cedula); //Where + Order + limit $personas = Personas::query()->where("estado='A'")->orderBy("nombres")->limit(100)->execute(); $people = People::find(array("estado='A'", "order" => "nombres", "limit" => 100)); $this->assertEquals(count($personas), count($people)); $somePersona = $personas->getFirst(); $somePeople = $people->getFirst(); $this->assertEquals($somePersona->cedula, $somePeople->cedula); //Where with bind params + order + Limit $personas = Personas::query()->where("estado=?1")->bind(array(1 => "A"))->orderBy("nombres")->limit(100)->execute(); $people = People::find(array("estado=?1", "bind" => array(1 => "A"), "order" => "nombres", "limit" => 100)); $this->assertEquals(count($personas), count($people)); $somePersona = $personas->getFirst(); $somePeople = $people->getFirst(); $this->assertEquals($somePersona->cedula, $somePeople->cedula); //Where with bind params + order + limit + Offset $personas = Personas::query()->where("estado=?1")->bind(array(1 => "A"))->orderBy("nombres")->limit(100, 10)->execute(); $people = People::find(array("estado=?1", "bind" => array(1 => "A"), "order" => "nombres", "limit" => array('number' => 100, 'offset' => 10))); $this->assertEquals(count($personas), count($people)); $somePersona = $personas->getFirst(); $somePeople = $people->getFirst(); $this->assertEquals($somePersona->cedula, $somePeople->cedula); //Where with named bind params + order + limit $personas = Personas::query()->where("estado=:estado:")->bind(array("estado" => "A"))->orderBy("nombres")->limit(100)->execute(); $people = People::find(array("estado=:estado:", "bind" => array("estado" => "A"), "order" => "nombres", "limit" => 100)); $this->assertEquals(count($personas), count($people)); $somePersona = $personas->getFirst(); $somePeople = $people->getFirst(); $this->assertEquals($somePersona->cedula, $somePeople->cedula); }
protected function _executeTestsNormal($di) { $number = 0; $robots = Robots::find(); foreach ($robots as $robot) { $this->assertTrue(is_object($robot)); $this->assertEquals(get_class($robot), 'Robots'); $number++; } $robots->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_RECORDS); foreach ($robots as $robot) { $this->assertTrue(is_object($robot)); $this->assertEquals(get_class($robot), 'Robots'); $number++; } $robots->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_ARRAYS); foreach ($robots as $robot) { $this->assertTrue(is_array($robot)); $this->assertEquals(count($robot), 4); $number++; } $robots->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_OBJECTS); foreach ($robots as $robot) { $this->assertTrue(is_object($robot)); $this->assertEquals(get_class($robot), 'stdClass'); $number++; } $this->assertEquals($number, 12); $number = 0; $people = People::find(array('limit' => 33)); foreach ($people as $person) { $this->assertTrue(is_object($person)); $this->assertEquals(get_class($person), 'People'); $number++; } $people->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_RECORDS); foreach ($people as $person) { $this->assertTrue(is_object($person)); $this->assertEquals(get_class($person), 'People'); $number++; } $people->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_ARRAYS); foreach ($people as $person) { $this->assertTrue(is_array($person)); $number++; } $people->setHydrateMode(Phalcon\Mvc\Model\Resultset::HYDRATE_OBJECTS); foreach ($people as $person) { $this->assertTrue(is_object($person)); $this->assertEquals(get_class($person), 'stdClass'); $number++; } $this->assertEquals($number, 33 * 4); }
public function testCacheResultsetSimpleLibmemcached() { require 'unit-tests/config.db.php'; if (empty($configMysql)) { $this->markTestSkipped('Test skipped'); return; } if (!class_exists('Memcached')) { $this->markTestSkipped("Memcached class does not exist, test skipped"); return; } $cache = $this->_getCache('Libmemcached'); $key = 'test-resultset-' . mt_rand(0, 9999); //Single $people = People::findFirst(array('cache' => array('key' => $key))); $this->assertTrue(is_object($people)); $people = $cache->get($key); $this->assertEquals(get_class($people->getFirst()), 'People'); $people = $cache->get($key); $this->assertEquals(get_class($people->getFirst()), 'People'); //Re-get from the cache $people = People::findFirst(array('cache' => array('key' => $key))); $this->assertTrue(is_object($people)); $key = 'test-resultset-' . mt_rand(0, 9999); //Multiple $people = People::find(array('limit' => 35, 'cache' => array('key' => $key))); $number = 0; foreach ($people as $individual) { $this->assertTrue(is_object($individual)); $number++; } $this->assertEquals($number, 35); $people = $cache->get($key); $this->assertEquals(get_class($people), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); $number = 0; foreach ($people as $individual) { $this->assertTrue(is_object($individual)); $number++; } $this->assertEquals($number, 35); $people = $cache->get($key); $this->assertEquals(get_class($people), 'Phalcon\\Mvc\\Model\\Resultset\\Simple'); //Re-get the data from the cache $people = People::find(array('limit' => 35, 'cache' => array('key' => $key))); $number = 0; foreach ($people as $individual) { $this->assertTrue(is_object($individual)); $number++; } $this->assertEquals($number, 35); }