$value[] = $user; $user = new User($uuid); $user->setUsername(new StringLiteral('randomUser1')); $value[] = $user; $removeUuid = new Uuid(); $checkUser = new User($removeUuid); $checkUser->setUsername(new StringLiteral('coolUser85')); $value[] = $checkUser; $actual = new Admins(); $actual->setUsers($value); $before = $actual->getUsers(); $actual->removeById($removeUuid); $after = $actual->getUsers(); expect(in_array($checkUser, $before)); expect(!in_array($checkUser, $after)); }); }); describe('->addUser($userName)', function () { it('should add a user to the admin', function () { $value = array('mbrow234', 'randomUser1', 'coolUser85'); $actual = new Admins(); $actual->setUsers($value); $before = $actual->getUsers(); $user = '******'; $actual->addUser($user); $after = $actual->getUsers(); expect(!in_array($user, $before)); expect(in_array($user, $after)); }); }); });
it('should return the admin\'s list of users he administrates to', function () { $faker = \Faker\Factory::create(); $user = new User(new Uuid()); $user->setUsername(new StringLiteral($faker->userName)); $users = array($user); $admin = new Admins(); $admin->addUser($user); expect($admin->getUsers())->equal($users); }); }); describe('->getName', function () { it('should get the correct the admin\'s username', function () { $user = new User(new Uuid()); $user->setUsername(new StringLiteral('Joe')); $admin = new Admins(); $admin->addUser($user); $actual = $admin->getName(); expect($actual->__toString())->equal('Joe'); }); }); describe('->RemoveUser()', function () { it('should delete a user that the admin is responsible for', function () { $actual = new Admins(); $user = new User(new Uuid()); $user->setUsername(new StringLiteral('Joe')); $before = $actual->getUsers(); $actual->removeUser(); $after = $actual->getUsers(); expect(!in_array($user, $before)); expect(in_array($user, $after)); });
expect($admins->getUsers()[0])->equal($user); }); }); describe('-->getUsers()', function () { it('should return User array', function () { $faker = \Faker\Factory::create(); $groupName = new StringLiteral($faker->name); $admins = new Admins(new Uuid(), $groupName); $users = []; for ($i = 0; $i < 10; $i++) { $user = new User(new Uuid(), new StringLiteral($faker->firstName), new StringLiteral($faker->lastName), new StringLiteral($faker->email)); $users[] = $user; $admins->addUser($user); } for ($i = 0; $i < 10; $i++) { expect($admins->getUsers()[$i])->equal($users[$i]); } }); }); describe('-->removeUser()', function () { it('should remove $user object from Admins', function () { $faker = \Faker\Factory::create(); $groupName = new StringLiteral($faker->name); $user = new User(new Uuid(), new StringLiteral($faker->firstName), new StringLiteral($faker->lastName), new StringLiteral($faker->email)); $admins = new Admins(new Uuid(), $groupName); $admins->addUser($user); $key = $admins->removeUser($user); expect($admins->getUsers()[$key])->to->be->null; }); }); });