public function setUp() { parent::setUp(); Zend_Registry::set('staticSalt', sha1(mt_rand())); $this->_authUser = UserTest::createRandomTestUser(); $this->_authUser->setUsername('Admin'); $this->_authUser->setPassword(UserService::encryptPassword('password', $this->_authUser->getSalt())); AclRoleService::create($this->_authUser->getRole()); UserService::create($this->_authUser); }
/** * Create action * * @return void */ public function createAction() { $request = $this->getRequest(); $form = new \Admin_Form_UserCreate(); if ($request->isPost()) { if ($form->isValid($request->getParams())) { $data = $form->getValues(); try { $user = UserService::create(array('username' => $data['username'], 'email' => $data['email'], 'password' => UserService::encryptPassword($data['password']), 'role' => AclRoleService::find($data['role']), 'dateCreated' => new DateTime(), 'active' => true, 'locked' => false)); UserProfileService::create(array('user' => $user, 'firstName' => $data['firstName'], 'lastName' => $data['lastName'], 'phone' => $data['phone'], 'website' => $data['website'], 'timeZone' => TimeZoneService::findOneByName('America/Los_Angeles'))); UserEditEventService::create(array('user' => $user, 'editor' => $this->_user, 'ip' => $this->getRequest()->getServer('REMOTE_ADDR'), 'date' => new DateTime(), 'description' => 'Creation')); $this->view->success = 1; $this->_helper->sessionMessenger('User created successfully.', 'success'); return $this->_helper->getHelper('Redirector')->gotoRoute(array(), 'adminUsers'); } catch (Exception $e) { $this->getResponse()->setHttpResponseCode(500); $this->view->success = 0; $message = 'development' == APPLICATION_ENV ? $e->getMessage() : 'Application error: AUCCA001'; $this->view->messages()->addMessage($message, 'error'); Logger::err($e->getMessage()); } } else { // Submitted form data is invalid $this->getResponse()->setHttpResponseCode(500); $this->view->success = 0; } } $this->view->form = $form; }
/** * Insert test data into test DB. * * @return void */ private static function insertTestData() { // Insert test data $roles = array('admin' => AclRoleService::create(array('name' => 'Administrator', 'description' => 'Site Administrator')), 'user' => AclRoleService::create(array('name' => 'User', 'description' => 'Regular user')), 'guest' => AclRoleService::create(array('name' => 'Guest', 'description' => 'Anonymous guest'))); $resources = array('default' => AclResourceService::create(array('identifier' => 'mvc:default:all', 'name' => 'Global non-admin access')), 'userLogin' => AclResourceService::create(array('identifier' => 'mvc:default:user:login', 'name' => 'User login')), 'admin' => AclResourceService::create(array('identifier' => 'mvc:admin', 'name' => 'Admin interface'))); AclPermissionService::create(array('role' => $roles['guest'], 'resource' => $resources['default'], 'name' => 'view')); AclPermissionService::create(array('role' => $roles['guest'], 'resource' => $resources['userLogin'], 'name' => 'view')); AclPermissionService::create(array('role' => $roles['admin'], 'resource' => $resources['admin'], 'name' => 'view')); #AclPermissionService::create(array('role' => $roles['admin'], 'resource' => $resources['adminIndex'], 'name' => 'view')); $userData = array(array('username' => 'admin', 'firstName' => 'admin', 'lastName' => 'istrator', 'role' => $roles['admin']), array('username' => 'testuser', 'firstName' => 'test', 'lastName' => 'er', 'role' => $roles['user'])); $timeZone = TimeZoneService::create(array('name' => 'America/Los_Angeles')); $users = array(); foreach ($userData as $u) { $user = UserService::create(array('role' => $u['role'], 'username' => $u['username'], 'password' => $u['username'], 'email' => $u['username'] . '@example.com', 'dateCreated' => new \DateTime(), 'lastConnect' => new \DateTime(), 'active' => 1, 'locked' => 0)); $user->setPassword(UserService::encryptPassword($user->getPassword())); $profile = UserProfileService::create(array('user' => $user, 'firstName' => $u['firstName'], 'lastName' => $u['lastName'], 'phone' => '408-555-5555', 'website' => '', 'timeZone' => $timeZone)); $user->setProfile($profile); #UserService::update(); #UserProfileService::update(); $users[$u['username']] = $user; } }
/** * @expectedException InvalidArgumentException */ public function testCreateWithInvalidObjectParameterThrowsException() { UserService::create(new \stdClass()); }