$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; }); }); });