/** @test */ public function should_have_admins_collection() { $group = new Group(GroupId::generate(), 'Cribbb'); $group->addAdmin($this->user); $this->assertInstanceOf('Doctrine\\Common\\Collections\\ArrayCollection', $group->admins()); $this->assertInstanceOf('Cribbb\\Domain\\Model\\Groups\\Admin', $group->admins()->first()); }
/** @test */ public function should_become_an_admin_of_a_group() { $user = User::register(UserId::generate(), new Email('*****@*****.**'), new Username('zuck'), new HashedPassword('facemash')); $group = new Group(GroupId::generate(), 'Porcellian'); $this->assertEquals(0, $group->admins()->count()); $this->assertEquals(0, $user->adminOf()->count()); $user->addAsAdminOf($group); $this->assertEquals(1, $group->admins()->count()); $this->assertEquals(1, $user->adminOf()->count()); }