mirror of
https://gitlab.com/allianceauth/allianceauth.git
synced 2025-07-12 05:50:16 +02:00
Fix test user creation.
This commit is contained in:
parent
b53c7a624b
commit
106f6bbcea
@ -11,7 +11,7 @@ logger = logging.getLogger(__name__)
|
|||||||
|
|
||||||
def get_users_for_state(state: State):
|
def get_users_for_state(state: State):
|
||||||
return User.objects.select_related('profile').prefetch_related('profile__main_character')\
|
return User.objects.select_related('profile').prefetch_related('profile__main_character')\
|
||||||
.filter(profile__state__pk=state.pk)
|
.filter(profile__state_id=state.pk)
|
||||||
|
|
||||||
|
|
||||||
class AutogroupsConfigManager(models.Manager):
|
class AutogroupsConfigManager(models.Manager):
|
||||||
@ -36,6 +36,8 @@ class AutogroupsConfigManager(models.Manager):
|
|||||||
:param state: State to update user for
|
:param state: State to update user for
|
||||||
:return:
|
:return:
|
||||||
"""
|
"""
|
||||||
|
import traceback
|
||||||
|
print(traceback.print_stack())
|
||||||
if state is None:
|
if state is None:
|
||||||
state = user.profile.state
|
state = user.profile.state
|
||||||
for config in self.filter(states=state):
|
for config in self.filter(states=state):
|
||||||
|
@ -45,9 +45,7 @@ def check_groups_on_profile_update(sender, instance, created, *args, **kwargs):
|
|||||||
"""
|
"""
|
||||||
Trigger check when main character or state changes.
|
Trigger check when main character or state changes.
|
||||||
"""
|
"""
|
||||||
update_fields = kwargs.pop('update_fields', []) or []
|
AutogroupsConfig.objects.update_groups_for_user(instance.user)
|
||||||
if 'main_character' in update_fields or 'state' in update_fields:
|
|
||||||
AutogroupsConfig.objects.update_groups_for_user(instance.user)
|
|
||||||
|
|
||||||
|
|
||||||
@receiver(m2m_changed, sender=AutogroupsConfig.states.through)
|
@receiver(m2m_changed, sender=AutogroupsConfig.states.through)
|
||||||
|
@ -1,8 +1,7 @@
|
|||||||
from unittest import mock
|
from unittest import mock
|
||||||
from django.db.models.signals import pre_save, post_save, pre_delete, m2m_changed
|
from django.db.models.signals import pre_save, post_save, pre_delete, m2m_changed
|
||||||
from allianceauth.authentication.models import UserProfile
|
from allianceauth.authentication.models import UserProfile
|
||||||
from allianceauth.authentication.signals import state_changed
|
from allianceauth.authentication.signals import reassess_on_profile_save
|
||||||
from allianceauth.eveonline.models import EveCharacter
|
|
||||||
from .. import signals
|
from .. import signals
|
||||||
from ..models import AutogroupsConfig
|
from ..models import AutogroupsConfig
|
||||||
|
|
||||||
@ -14,6 +13,7 @@ def patch(target, *args, **kwargs):
|
|||||||
|
|
||||||
|
|
||||||
def connect_signals():
|
def connect_signals():
|
||||||
|
post_save.connect(receiver=reassess_on_profile_save, sender=UserProfile)
|
||||||
pre_save.connect(receiver=signals.pre_save_config, sender=AutogroupsConfig)
|
pre_save.connect(receiver=signals.pre_save_config, sender=AutogroupsConfig)
|
||||||
pre_delete.connect(receiver=signals.pre_delete_config, sender=AutogroupsConfig)
|
pre_delete.connect(receiver=signals.pre_delete_config, sender=AutogroupsConfig)
|
||||||
post_save.connect(receiver=signals.check_groups_on_profile_update, sender=UserProfile)
|
post_save.connect(receiver=signals.check_groups_on_profile_update, sender=UserProfile)
|
||||||
@ -21,6 +21,7 @@ def connect_signals():
|
|||||||
|
|
||||||
|
|
||||||
def disconnect_signals():
|
def disconnect_signals():
|
||||||
|
post_save.disconnect(receiver=reassess_on_profile_save, sender=UserProfile)
|
||||||
pre_save.disconnect(receiver=signals.pre_save_config, sender=AutogroupsConfig)
|
pre_save.disconnect(receiver=signals.pre_save_config, sender=AutogroupsConfig)
|
||||||
pre_delete.disconnect(receiver=signals.pre_delete_config, sender=AutogroupsConfig)
|
pre_delete.disconnect(receiver=signals.pre_delete_config, sender=AutogroupsConfig)
|
||||||
post_save.disconnect(receiver=signals.check_groups_on_profile_update, sender=UserProfile)
|
post_save.disconnect(receiver=signals.check_groups_on_profile_update, sender=UserProfile)
|
||||||
|
@ -16,8 +16,6 @@ class AutogroupsConfigTestCase(TestCase):
|
|||||||
# Disconnect signals
|
# Disconnect signals
|
||||||
disconnect_signals()
|
disconnect_signals()
|
||||||
|
|
||||||
self.member = AuthUtils.create_member('test user')
|
|
||||||
|
|
||||||
state = AuthUtils.get_member_state()
|
state = AuthUtils.get_member_state()
|
||||||
|
|
||||||
self.alliance = EveAllianceInfo.objects.create(
|
self.alliance = EveAllianceInfo.objects.create(
|
||||||
@ -38,6 +36,8 @@ class AutogroupsConfigTestCase(TestCase):
|
|||||||
state.member_alliances.add(self.alliance)
|
state.member_alliances.add(self.alliance)
|
||||||
state.member_corporations.add(self.corp)
|
state.member_corporations.add(self.corp)
|
||||||
|
|
||||||
|
self.member = AuthUtils.create_member('test user')
|
||||||
|
|
||||||
def tearDown(self):
|
def tearDown(self):
|
||||||
# Reconnect signals
|
# Reconnect signals
|
||||||
connect_signals()
|
connect_signals()
|
||||||
|
@ -13,8 +13,6 @@ from . import patch, disconnect_signals, connect_signals
|
|||||||
class SignalsTestCase(TestCase):
|
class SignalsTestCase(TestCase):
|
||||||
def setUp(self):
|
def setUp(self):
|
||||||
disconnect_signals()
|
disconnect_signals()
|
||||||
self.member = AuthUtils.create_member('test user')
|
|
||||||
|
|
||||||
state = AuthUtils.get_member_state()
|
state = AuthUtils.get_member_state()
|
||||||
|
|
||||||
self.char = EveCharacter.objects.create(
|
self.char = EveCharacter.objects.create(
|
||||||
@ -27,9 +25,6 @@ class SignalsTestCase(TestCase):
|
|||||||
alliance_name='alliance name',
|
alliance_name='alliance name',
|
||||||
)
|
)
|
||||||
|
|
||||||
self.member.profile.main_character = self.char
|
|
||||||
self.member.profile.save()
|
|
||||||
|
|
||||||
self.alliance = EveAllianceInfo.objects.create(
|
self.alliance = EveAllianceInfo.objects.create(
|
||||||
alliance_id='3456',
|
alliance_id='3456',
|
||||||
alliance_name='alliance name',
|
alliance_name='alliance name',
|
||||||
@ -47,6 +42,11 @@ class SignalsTestCase(TestCase):
|
|||||||
|
|
||||||
state.member_alliances.add(self.alliance)
|
state.member_alliances.add(self.alliance)
|
||||||
state.member_corporations.add(self.corp)
|
state.member_corporations.add(self.corp)
|
||||||
|
|
||||||
|
self.member = AuthUtils.create_member('test user')
|
||||||
|
self.member.profile.main_character = self.char
|
||||||
|
self.member.profile.save()
|
||||||
|
|
||||||
connect_signals()
|
connect_signals()
|
||||||
|
|
||||||
@patch('.models.AutogroupsConfigManager.update_groups_for_user')
|
@patch('.models.AutogroupsConfigManager.update_groups_for_user')
|
||||||
@ -71,10 +71,10 @@ class SignalsTestCase(TestCase):
|
|||||||
alliance_id='3456',
|
alliance_id='3456',
|
||||||
alliance_name='alliance name',
|
alliance_name='alliance name',
|
||||||
)
|
)
|
||||||
|
|
||||||
# Trigger signal
|
# Trigger signal
|
||||||
self.member.profile.main_character = char
|
self.member.profile.main_character = char
|
||||||
self.member.profile.save()
|
self.member.profile.save()
|
||||||
|
|
||||||
self.assertTrue(update_groups_for_user.called)
|
self.assertTrue(update_groups_for_user.called)
|
||||||
self.assertEqual(update_groups_for_user.call_count, 1)
|
self.assertEqual(update_groups_for_user.call_count, 1)
|
||||||
args, kwargs = update_groups_for_user.call_args
|
args, kwargs = update_groups_for_user.call_args
|
||||||
|
Loading…
x
Reference in New Issue
Block a user