def test_remove(self): MembershipPrototype.create(account=self.account_2, clan=self.clan, role=MEMBER_ROLE.MEMBER).remove() self.assertEqual(ForumPermissionPrototype._db_count(), 1) permission = ForumPermissionPrototype._db_get_object(0) self.assertEqual(permission.account_id, self.account.id) self.assertEqual(permission.subcategory_id, self.clan.forum_subcategory_id)
def test_remove(self): self.clan.remove() self.assertEqual(ClanPrototype._db_count(), 0) self.assertEqual(MembershipPrototype._db_count(), 0) self.assertEqual(SubCategoryPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 0) self.assertEqual(ForumPermissionPrototype.get_for(self.account.id, self.clan.forum_subcategory_id), None)
def test_create(self): self.assertEqual(self.clan.name, 'clan-name') self.assertEqual(self.clan.abbr, 'abbr') self.assertEqual(self.clan.motto, 'clan-motto') self.assertEqual(self.clan.description, 'clan-description') self.assertEqual(self.clan.members_number, 1) membership = MembershipPrototype.get_by_account_id(self.account.id) self.assertEqual(membership.clan_id, self.clan.id) self.assertEqual(membership.account_id, self.account.id) self.assertTrue(membership.role.is_LEADER) self.account.reload() self.assertEqual(self.account.clan_id, self.clan.id) self.assertEqual(SubCategoryPrototype._db_count(), 1) self.assertTrue( SubCategoryPrototype.get_by_id( self.clan.forum_subcategory_id).restricted) self.assertEqual(ForumPermissionPrototype._db_count(), 1) self.assertNotEqual( ForumPermissionPrototype.get_for(self.account.id, self.clan.forum_subcategory_id), None)
def test_remove_member_member__not_member(self): account_2 = self.accounts_factory.create_account() self.assertRaises(exceptions.RemoveNotMemberFromClanError, self.clan.remove_member, account_2) self.assertEqual(self.clan.members_number, 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_remove_member_member__not_member(self): result, account_id, bundle_id = register_user('test_user_2', '*****@*****.**', '111111') account_2 = AccountPrototype.get_by_id(account_id) self.assertRaises(exceptions.RemoveNotMemberFromClanError, self.clan.remove_member, account_2) self.assertEqual(self.clan.members_number, 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_add_member__already_member(self): account_2 = self.accounts_factory.create_account() self.create_clan(account_2, 0) self.assertRaises(exceptions.AddMemberFromClanError, self.clan.add_member, account_2) self.assertEqual(self.clan.members_number, 1) self.assertEqual(MembershipPrototype._db_count(), 2) self.assertEqual(ForumPermissionPrototype.get_for(account_2.id, self.clan.forum_subcategory_id), None)
def test_add_member__success(self): account_2 = self.accounts_factory.create_account() self.clan.add_member(account_2) self.assertEqual(self.clan.members_number, 2) self.assertEqual(MembershipPrototype._db_count(), 2) account_2.reload() self.assertEqual(account_2.clan_id, self.clan.id) self.assertNotEqual(ForumPermissionPrototype.get_for(account_2.id, self.clan.forum_subcategory_id), None)
def test_add_member__already_member(self): result, account_id, bundle_id = register_user('test_user_2', '*****@*****.**', '111111') account_2 = AccountPrototype.get_by_id(account_id) self.create_clan(account_2, 0) self.assertRaises(exceptions.AddMemberFromClanError, self.clan.add_member, account_2) self.assertEqual(self.clan.members_number, 1) self.assertEqual(MembershipPrototype._db_count(), 2) self.assertEqual(ForumPermissionPrototype.get_for(account_2.id, self.clan.forum_subcategory_id), None)
def test_add_member__success(self): result, account_id, bundle_id = register_user('test_user_2', '*****@*****.**', '111111') account_2 = AccountPrototype.get_by_id(account_id) self.clan.add_member(account_2) self.assertEqual(self.clan.members_number, 2) self.assertEqual(MembershipPrototype._db_count(), 2) account_2.reload() self.assertEqual(account_2.clan_id, self.clan.id) self.assertNotEqual(ForumPermissionPrototype.get_for(account_2.id, self.clan.forum_subcategory_id), None)
def test_unique_abbr(self): self.assertRaises(IntegrityError, ClanPrototype.create, self.accounts_factory.create_account(), abbr=self.clan.abbr, name='bla-name', motto='bla-motto', description='bla-description') self.assertEqual(ClanPrototype._db_count(), 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_unique_owner(self): self.assertRaises(IntegrityError, ClanPrototype.create, self.account, abbr='abr2', name='bla-name', motto='bla-motto', description=u'bla-description') self.assertEqual(ClanPrototype._db_count(), 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_unique_owner(self): self.assertRaises(IntegrityError, ClanPrototype.create, self.account, abbr='abr2', name='bla-name', motto='bla-motto', description='bla-description') self.assertEqual(ClanPrototype._db_count(), 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_unique_abbr(self): result, account_id, bundle_id = register_user('test_user_2', '*****@*****.**', '111111') self.assertRaises(IntegrityError, ClanPrototype.create, AccountPrototype.get_by_id(account_id), abbr=self.clan.abbr, name='bla-name', motto='bla-motto', description=u'bla-description') self.assertEqual(ClanPrototype._db_count(), 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_unique_name(self): self.assertRaises(IntegrityError, ClanPrototype.create, self.accounts_factory.create_account(), abbr='abr2', name=self.clan.name, motto='bla-motto', description='bla-description') self.assertEqual(ClanPrototype._db_count(), 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)
def test_create(self): self.assertEqual(self.clan.name, 'clan-name') self.assertEqual(self.clan.abbr, 'abbr') self.assertEqual(self.clan.motto, 'clan-motto') self.assertEqual(self.clan.description, 'clan-description') self.assertEqual(self.clan.members_number, 1) membership = MembershipPrototype.get_by_account_id(self.account.id) self.assertEqual(membership.clan_id, self.clan.id) self.assertEqual(membership.account_id, self.account.id) self.assertTrue(membership.role.is_LEADER) self.account.reload() self.assertEqual(self.account.clan_id, self.clan.id) self.assertEqual(SubCategoryPrototype._db_count(), 1) self.assertTrue(SubCategoryPrototype.get_by_id(self.clan.forum_subcategory_id).restricted) self.assertEqual(ForumPermissionPrototype._db_count(), 1) self.assertNotEqual(ForumPermissionPrototype.get_for(self.account.id, self.clan.forum_subcategory_id), None)
def membership(self): if self.account.is_authenticated(): return MembershipPrototype.get_by_account_id(self.account.id)
def test_remove_member_member__leader(self): self.assertRaises(exceptions.RemoveLeaderFromClanError, self.clan.remove_member, self.account) self.assertEqual(self.clan.members_number, 1) self.assertEqual(MembershipPrototype._db_count(), 1) self.assertEqual(ForumPermissionPrototype._db_count(), 1)