public function test_set_methods() { // Some values can be set in the constructor. $userdata = array('name' => 'A new test user', 'username' => 'new_test_user', 'email' => '*****@*****.**'); $user = new User_entity($userdata); // Must be converted to int before sending to DB. $user->set_status("2"); $user->set_password('password'); $this->assertInternalType('int', $user->status); $this->assertEquals('password', $user->password); $user->set_roles(array('role1', 'role2')); $this->assertEquals(array('role1', 'role2'), $user->roles); $user->set_roles(array('role1', 'role2', 'role2')); $this->assertEquals(array('role1', 'role2'), $user->roles); $user->set_roles('not_a_role'); $this->assertEmpty($user->roles); $user->set_roles(NULL); $this->assertEmpty($user->roles); }
/** * Setup the base status of the application. * These are not fixtures. This is needed data for the app * to work. */ public function live_setup() { if (ENVIRONMENT != 'development') { show_error('Not allowed. Only available during development'); } $this->_tear_down(); // Create needed folders. if (!is_dir('files/surveys')) { mkdir('files/surveys', 0777, TRUE); } if (!is_dir('files/survey_results')) { mkdir('files/survey_results', 0777, TRUE); } // Admin user $admin = new User_entity(array('email' => '*****@*****.**', 'name' => 'Admin', 'username' => 'admin', 'author' => 0)); $admin->set_password(hash_password('admin'))->set_status(User_entity::STATUS_ACTIVE)->set_roles(array(ROLE_ADMINISTRATOR)); $this->user_model->save($admin); // Database indexes. $this->mongo_db->addIndex('call_tasks', array('ctid' => 'asc')); redirect('/login'); }
$this->user_model->save($user); //////////////////////////////////////////////// // User 2 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'Regular user', 'username' => 'regular', 'author' => 1)); $user->set_password(hash_password('regular'))->set_status(User_entity::STATUS_ACTIVE); $this->user_model->save($user); //////////////////////////////////////////////// // User 3 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'The Agent', 'username' => 'agent', 'author' => 1)); $user->set_password(hash_password('agent'))->set_status(User_entity::STATUS_ACTIVE)->set_roles(array(ROLE_CC_AGENT)); $this->user_model->save($user); //////////////////////////////////////////////// // User 4 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'The Moderator', 'username' => 'moderator', 'author' => 1)); $user->set_password(hash_password('moderator'))->set_status(User_entity::STATUS_ACTIVE)->set_roles(array(ROLE_MODERATOR)); $this->user_model->save($user); //////////////////////////////////////////////// // User 5 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'The Blocked Agent', 'username' => 'blocked', 'author' => 1)); $user->set_password(hash_password('blocked'))->set_status(User_entity::STATUS_BLOCKED)->set_roles(array(ROLE_CC_AGENT)); $this->user_model->save($user); //////////////////////////////////////////////// // User 6 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'The Deleted', 'username' => 'deleted', 'author' => 1)); $user->set_password(hash_password('deleted'))->set_status(User_entity::STATUS_DELETED); $this->user_model->save($user); //////////////////////////////////////////////// // User 7 $user = new User_entity(array('email' => '*****@*****.**', 'name' => 'The All Roles', 'username' => 'all_roles', 'author' => 1)); $user->set_password(hash_password('all_roles'))->set_status(User_entity::STATUS_ACTIVE)->set_roles(array(ROLE_ADMINISTRATOR, ROLE_MODERATOR, ROLE_CC_AGENT)); $this->user_model->save($user);
/** * @depends test_get_user_by_uid */ public function test_add_user() { // Some values can be set in the constructor. $userdata = array('name' => 'A new test user', 'username' => 'new_test_user', 'email' => '*****@*****.**'); $user = new User_entity($userdata); $user->set_password(hash_password('test_password'))->set_status(User_entity::STATUS_ACTIVE)->set_roles(NULL); // Save. // We have two test users. This one will be added with uid $user->uid. self::$CI->user_model->save($user); $saved_user = self::$CI->user_model->get($user->uid); $this->assertEquals('A new test user', $saved_user->name); $this->assertEquals('new_test_user', $saved_user->username); $this->assertEquals('*****@*****.**', $saved_user->email); $this->assertEquals(User_entity::STATUS_ACTIVE, $saved_user->status); $this->assertInternalType('int', $saved_user->status); $this->assertEmpty($saved_user->roles); }