コード例 #1
0
    def setUp(self):
        self.member = AuthUtils.create_member('auth_member')
        AuthUtils.add_main_character(self.member, 'test character', '1234',
                                     '2345', 'test corp', 'testc')
        self.member.email = '*****@*****.**'
        self.member.save()
        self.none_user = AuthUtils.create_user('none_user',
                                               disconnect_signals=True)
        self.none_user2 = AuthUtils.create_user('none_user2',
                                                disconnect_signals=True)
        self.none_user3 = AuthUtils.create_user('none_user3',
                                                disconnect_signals=True)

        self.no_perm_user = AuthUtils.create_user('no_perm_user',
                                                  disconnect_signals=True)

        AuthUtils.disconnect_signals()
        self.no_perm_group = Group.objects.create(name="No Permission Group")

        self.test_group = Group.objects.create(name="Test group")

        self.test_group.user_set.add(self.none_user)
        self.test_group.user_set.add(self.none_user2)
        self.test_group.user_set.add(self.none_user3)

        self.permission = Permission.objects.get_by_natural_key(
            codename='audit_permissions',
            app_label='permissions_tool',
            model='permissionstool')

        self.test_group.permissions.add(self.permission)
        self.member.user_permissions.add(self.permission)
        AuthUtils.connect_signals()
コード例 #2
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
 def test_registered(self):
     self.assertFalse(self.member.registered)
     AuthUtils.disconnect_signals()
     character = EveCharacter.objects.create(character_id='2', character_name='other test character', corporation_id='2', corporation_name='test corp', corporation_ticker='TEST')
     CharacterOwnership.objects.create(character=character, user=self.user, owner_hash='b')
     self.assertTrue(self.member.registered)
     AuthUtils.connect_signals()
コード例 #3
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
    def test_main_character(self):
        AuthUtils.disconnect_signals()

        # test when member.character is None
        self.assertIsNone(self.member.main_character)

        # test when member.character is not None but also not a main
        character = EveCharacter.objects.create(character_id='2', character_name='other test character', corporation_id='2', corporation_name='test corp', corporation_ticker='TEST')
        CharacterOwnership.objects.create(character=character, user=self.user, owner_hash='b')
        self.member.refresh_from_db()
        self.assertNotEqual(self.member.main_character, self.member.character)
        self.assertEquals(self.member.main_character, self.user.profile.main_character)

        # test when is main
        old_main = self.user.profile.main_character
        self.user.profile.main_character = character
        self.user.profile.save()
        self.member.refresh_from_db()
        self.assertEqual(self.member.main_character, self.member.character)
        self.assertEqual(self.user.profile.main_character, self.member.main_character)

        # transaction won't roll this back
        self.user.profile.main_character = old_main
        self.user.profile.save()
        AuthUtils.connect_signals()
コード例 #4
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
    def test_mains(self):
        # test when is a main
        member = CorpMember.objects.create(corpstats=self.corpstats, character_id='1', character_name='test character')
        self.assertIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 1)

        # test when is an alt
        old_main = self.user.profile.main_character
        character = EveCharacter.objects.create(character_name='other character', character_id=10, corporation_name='test corp', corporation_id='2', corporation_ticker='TEST')
        AuthUtils.disconnect_signals()
        co = CharacterOwnership.objects.create(character=character, user=self.user, owner_hash='b')
        self.user.profile.main_character = character
        self.user.profile.save()
        AuthUtils.connect_signals()
        self.assertNotIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 0)

        # test when no ownership
        co.delete()
        self.assertNotIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 0)

        # transaction won't roll this back
        AuthUtils.disconnect_signals()
        self.user.profile.main_character = old_main
        self.user.profile.save()
        AuthUtils.connect_signals()
コード例 #5
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
 def setUpTestData(cls):
     cls.main_character = EveCharacter.objects.create(
         character_id=1,
         character_name='Main Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.alt_character = EveCharacter.objects.create(
         character_id=2,
         character_name='Alt Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.unclaimed_character = EveCharacter.objects.create(
         character_id=3,
         character_name='Unclaimed Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.user = AuthUtils.create_user('test_user', disconnect_signals=True)
     cls.old_user = AuthUtils.create_user('old_user', disconnect_signals=True)
     AuthUtils.disconnect_signals()
     CharacterOwnership.objects.create(user=cls.user, character=cls.main_character, owner_hash='1')
     CharacterOwnership.objects.create(user=cls.user, character=cls.alt_character, owner_hash='2')
     UserProfile.objects.update_or_create(user=cls.user, defaults={'main_character': cls.main_character})
     AuthUtils.connect_signals()
コード例 #6
0
    def test_m2m_changed_group_permissions(self, services_hook, transaction):
        from django.contrib.contenttypes.models import ContentType
        svc = mock.Mock()
        svc.validate_user.return_value = None
        svc.access_perm = 'auth.access_testsvc'

        services_hook.get_services.return_value = [svc]

        # Overload transaction.on_commit so everything happens synchronously
        transaction.on_commit = lambda fn: fn()

        test_group = Group.objects.create(name="Test group")
        AuthUtils.disconnect_signals()
        self.member.groups.add(test_group)
        AuthUtils.connect_signals()

        ct = ContentType.objects.get(app_label='auth', model='permission')
        perm = Permission.objects.create(name="Test perm",
                                         codename="access_testsvc",
                                         content_type=ct)
        test_group.permissions.add(perm)

        # Act, should trigger m2m change
        test_group.permissions.remove(perm)

        # Assert
        self.assertTrue(services_hook.get_services.called)

        self.assertTrue(svc.validate_user.called)
        args, kwargs = svc.validate_user.call_args
        self.assertEqual(self.member, args[0])
コード例 #7
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
    def setUp(self):
        self.member = AuthUtils.create_member('auth_member')
        AuthUtils.add_main_character(self.member, 'test character', '1234', '2345', 'test corp', 'testc')
        self.member.email = '*****@*****.**'
        self.member.save()
        self.none_user = AuthUtils.create_user('none_user', disconnect_signals=True)
        self.none_user2 = AuthUtils.create_user('none_user2', disconnect_signals=True)
        self.none_user3 = AuthUtils.create_user('none_user3', disconnect_signals=True)

        self.no_perm_user = AuthUtils.create_user('no_perm_user', disconnect_signals=True)

        AuthUtils.disconnect_signals()
        self.no_perm_group = Group.objects.create(name="No Permission Group")

        self.test_group = Group.objects.create(name="Test group")

        self.test_group.user_set.add(self.none_user)
        self.test_group.user_set.add(self.none_user2)
        self.test_group.user_set.add(self.none_user3)

        self.permission = Permission.objects.get_by_natural_key(codename='audit_permissions',
                                                                app_label='permissions_tool',
                                                                model='permissionstool')

        self.test_group.permissions.add(self.permission)
        self.member.user_permissions.add(self.permission)
        AuthUtils.connect_signals()
コード例 #8
0
ファイル: tests.py プロジェクト: tnisarghu/allianceauth
 def setUpTestData(cls):
     cls.main_character = EveCharacter.objects.create(
         character_id=1,
         character_name='Main Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.alt_character = EveCharacter.objects.create(
         character_id=2,
         character_name='Alt Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.unclaimed_character = EveCharacter.objects.create(
         character_id=3,
         character_name='Unclaimed Character',
         corporation_id=1,
         corporation_name='Corp',
         corporation_ticker='CORP',
     )
     cls.user = AuthUtils.create_user('test_user', disconnect_signals=True)
     cls.old_user = AuthUtils.create_user('old_user',
                                          disconnect_signals=True)
     AuthUtils.disconnect_signals()
     CharacterOwnership.objects.create(user=cls.user,
                                       character=cls.main_character,
                                       owner_hash='1')
     CharacterOwnership.objects.create(user=cls.user,
                                       character=cls.alt_character,
                                       owner_hash='2')
     UserProfile.objects.update_or_create(
         user=cls.user, defaults={'main_character': cls.main_character})
     AuthUtils.connect_signals()
コード例 #9
0
ファイル: test_signals.py プロジェクト: Kaezon/allianceauth
    def test_m2m_changed_group_permissions(self, services_hook, transaction):
        from django.contrib.contenttypes.models import ContentType
        svc = mock.Mock()
        svc.validate_user.return_value = None
        svc.access_perm = 'auth.access_testsvc'

        services_hook.get_services.return_value = [svc]

        # Overload transaction.on_commit so everything happens synchronously
        transaction.on_commit = lambda fn: fn()

        test_group = Group.objects.create(name="Test group")
        AuthUtils.disconnect_signals()
        self.member.groups.add(test_group)
        AuthUtils.connect_signals()

        ct = ContentType.objects.get(app_label='auth', model='permission')
        perm = Permission.objects.create(name="Test perm", codename="access_testsvc", content_type=ct)
        test_group.permissions.add(perm)

        # Act, should trigger m2m change
        test_group.permissions.remove(perm)

        # Assert
        self.assertTrue(services_hook.get_services.called)

        self.assertTrue(svc.validate_user.called)
        args, kwargs = svc.validate_user.call_args
        self.assertEqual(self.member, args[0])
コード例 #10
0
ファイル: tests.py プロジェクト: TargetZ3R0/BADI-AAUTH
    def test_main_character(self):
        AuthUtils.disconnect_signals()

        # test when member.character is None
        self.assertIsNone(self.member.main_character)

        # test when member.character is not None but also not a main
        character = EveCharacter.objects.create(
            character_id='2',
            character_name='other test character',
            corporation_id='2',
            corporation_name='test corp',
            corporation_ticker='TEST')
        CharacterOwnership.objects.create(character=character,
                                          user=self.user,
                                          owner_hash='b')
        self.member.refresh_from_db()
        self.assertNotEqual(self.member.main_character, self.member.character)
        self.assertEquals(self.member.main_character,
                          self.user.profile.main_character)

        # test when is main
        old_main = self.user.profile.main_character
        self.user.profile.main_character = character
        self.user.profile.save()
        self.member.refresh_from_db()
        self.assertEqual(self.member.main_character, self.member.character)
        self.assertEqual(self.user.profile.main_character,
                         self.member.main_character)

        # transaction won't roll this back
        self.user.profile.main_character = old_main
        self.user.profile.save()
        AuthUtils.connect_signals()
コード例 #11
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
 def test_user_count(self):
     AuthUtils.disconnect_signals()
     co = CharacterOwnership.objects.create(character=self.character, user=self.user, owner_hash='a')
     AuthUtils.connect_signals()
     CorpMember.objects.create(corpstats=self.corpstats, character_id='4', character_name='test character')
     self.assertEqual(self.corpstats.user_count, 1)
     co.delete()
     self.assertEqual(self.corpstats.user_count, 0)
コード例 #12
0
ファイル: tests.py プロジェクト: Kaezon/allianceauth
    def test_unregistered_members(self):
        member = CorpMember.objects.create(corpstats=self.corpstats, character_id='4', character_name='test character')
        self.corpstats.refresh_from_db()
        self.assertIn(member, self.corpstats.unregistered_members)
        self.assertEqual(self.corpstats.unregistered_member_count, 1)

        AuthUtils.disconnect_signals()
        CharacterOwnership.objects.create(character=self.character, user=self.user, owner_hash='a')
        AuthUtils.connect_signals()
        self.assertNotIn(member, self.corpstats.unregistered_members)
        self.assertEqual(self.corpstats.unregistered_member_count, 0)
コード例 #13
0
ファイル: tests.py プロジェクト: TargetZ3R0/BADI-AAUTH
 def test_user_count(self):
     AuthUtils.disconnect_signals()
     co = CharacterOwnership.objects.create(character=self.character,
                                            user=self.user,
                                            owner_hash='a')
     AuthUtils.connect_signals()
     CorpMember.objects.create(corpstats=self.corpstats,
                               character_id='4',
                               character_name='test character')
     self.assertEqual(self.corpstats.user_count, 1)
     co.delete()
     self.assertEqual(self.corpstats.user_count, 0)
コード例 #14
0
ファイル: tests.py プロジェクト: TargetZ3R0/BADI-AAUTH
 def test_registered(self):
     self.assertFalse(self.member.registered)
     AuthUtils.disconnect_signals()
     character = EveCharacter.objects.create(
         character_id='2',
         character_name='other test character',
         corporation_id='2',
         corporation_name='test corp',
         corporation_ticker='TEST')
     CharacterOwnership.objects.create(character=character,
                                       user=self.user,
                                       owner_hash='b')
     self.assertTrue(self.member.registered)
     AuthUtils.connect_signals()
コード例 #15
0
ファイル: tests.py プロジェクト: TargetZ3R0/BADI-AAUTH
    def test_unregistered_members(self):
        member = CorpMember.objects.create(corpstats=self.corpstats,
                                           character_id='4',
                                           character_name='test character')
        self.corpstats.refresh_from_db()
        self.assertIn(member, self.corpstats.unregistered_members)
        self.assertEqual(self.corpstats.unregistered_member_count, 1)

        AuthUtils.disconnect_signals()
        CharacterOwnership.objects.create(character=self.character,
                                          user=self.user,
                                          owner_hash='a')
        AuthUtils.connect_signals()
        self.assertNotIn(member, self.corpstats.unregistered_members)
        self.assertEqual(self.corpstats.unregistered_member_count, 0)
コード例 #16
0
 def setUpTestData(cls):
     cls.user = AuthUtils.create_user('test')
     AuthUtils.add_main_character(cls.user,
                                  'test character',
                                  '1',
                                  corp_id='2',
                                  corp_name='test_corp',
                                  corp_ticker='TEST',
                                  alliance_name='TEST')
     cls.user.profile.refresh_from_db()
     cls.token = Token.objects.create(user=cls.user,
                                      access_token='a',
                                      character_id='1',
                                      character_name='test character',
                                      character_owner_hash='z')
     cls.alliance = EveAllianceInfo.objects.create(
         alliance_id=3,
         alliance_name='test alliance',
         alliance_ticker='TEST',
         executor_corp_id=2)
     cls.corp = EveCorporationInfo.objects.create(
         corporation_id=2,
         corporation_name='test corp',
         corporation_ticker='TEST',
         alliance_id=cls.alliance.id,
         member_count=1)
     cls.corp.alliance = cls.alliance
     cls.corp.save()
     cls.corpstat = CorpStat.objects.create(token=cls.token, corp=cls.corp)
     cls.character = EveCharacter.objects.create(
         character_name='another test character',
         character_id=4,
         corporation_id=2,
         corporation_name='test corp',
         corporation_ticker='TEST')
     AuthUtils.disconnect_signals()
     CharacterOwnership.objects.create(character=cls.character,
                                       user=cls.user,
                                       owner_hash='a')
     AuthUtils.connect_signals()
コード例 #17
0
ファイル: tests.py プロジェクト: TargetZ3R0/BADI-AAUTH
    def test_mains(self):
        # test when is a main
        member = CorpMember.objects.create(corpstats=self.corpstats,
                                           character_id='1',
                                           character_name='test character')
        self.assertIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 1)

        # test when is an alt
        old_main = self.user.profile.main_character
        character = EveCharacter.objects.create(
            character_name='other character',
            character_id=10,
            corporation_name='test corp',
            corporation_id='2',
            corporation_ticker='TEST')
        AuthUtils.disconnect_signals()
        co = CharacterOwnership.objects.create(character=character,
                                               user=self.user,
                                               owner_hash='b')
        self.user.profile.main_character = character
        self.user.profile.save()
        AuthUtils.connect_signals()
        self.assertNotIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 0)

        # test when no ownership
        co.delete()
        self.assertNotIn(member, self.corpstats.mains)
        self.assertEqual(self.corpstats.main_count, 0)

        # transaction won't roll this back
        AuthUtils.disconnect_signals()
        self.user.profile.main_character = old_main
        self.user.profile.save()
        AuthUtils.connect_signals()