From a8b52b76b39768582dad1c8267bd32117dfc8321 Mon Sep 17 00:00:00 2001 From: Griatch Date: Sat, 8 Jan 2022 17:40:40 +0100 Subject: [PATCH] Fix unit test base --- evennia/contrib/utils/auditing/tests.py | 1 - evennia/prototypes/tests.py | 1 + evennia/utils/test_resources.py | 45 +++++++++++-------------- 3 files changed, 21 insertions(+), 26 deletions(-) diff --git a/evennia/contrib/utils/auditing/tests.py b/evennia/contrib/utils/auditing/tests.py index fbd0bec0d4..626e7e291d 100644 --- a/evennia/contrib/utils/auditing/tests.py +++ b/evennia/contrib/utils/auditing/tests.py @@ -28,7 +28,6 @@ class AuditingTest(BaseEvenniaTest): session = SESSIONS.session_from_sessid(1) # the real session SESSIONS.login(session, self.account, testmode=True) self.session = session - print("session", type(self.session), self.session) @patch("evennia.contrib.utils.auditing.server.AUDIT_CALLBACK", "evennia.contrib.utils.auditing.outputs.to_syslog") diff --git a/evennia/prototypes/tests.py b/evennia/prototypes/tests.py index 286d6203ed..34d042edf9 100644 --- a/evennia/prototypes/tests.py +++ b/evennia/prototypes/tests.py @@ -949,6 +949,7 @@ class TestPartialTagAttributes(BaseEvenniaTest): """ def setUp(self): + super().setUp() self.prot = { 'prototype_key': 'rock', 'typeclass': 'evennia.objects.objects.DefaultObject', diff --git a/evennia/utils/test_resources.py b/evennia/utils/test_resources.py index ca68b792bc..2f3967086e 100644 --- a/evennia/utils/test_resources.py +++ b/evennia/utils/test_resources.py @@ -131,27 +131,6 @@ class EvenniaTestMixin: room_typeclass = DefaultRoom script_typeclass = DefaultScript - def save_backups(self): - self.backups = ( - SESSIONS.data_out, - SESSIONS.disconnect, - settings.DEFAULT_HOME, - settings.PROTOTYPE_MODULES, - ) - - def restore_backups(self): - flush_cache() - if hasattr(self, "backups"): - SESSIONS.data_out = self.backups[0] - SESSIONS.disconnect = self.backups[1] - settings.DEFAULT_HOME = self.backups[2] - settings.PROTOTYPE_MODULES = self.backups[3] - - def mock_sessions(self): - SESSIONS.data_out = Mock() - SESSIONS.disconnect = Mock() - self.mocked_SESSIONS = SESSIONS - def create_accounts(self): self.account = create.create_account( "TestAccount", @@ -229,8 +208,15 @@ class EvenniaTestMixin: """ Sets up testing environment """ - self.save_backups() - self.mock_sessions() + self.backups = ( + SESSIONS.data_out, + SESSIONS.disconnect, + settings.DEFAULT_HOME, + settings.PROTOTYPE_MODULES, + ) + SESSIONS.data_out = Mock() + SESSIONS.disconnect = Mock() + self.create_accounts() self.create_rooms() self.create_objs() @@ -239,8 +225,17 @@ class EvenniaTestMixin: self.setup_session() def tearDown(self): - self.restore_backups() - self.teardown_session() + flush_cache() + try: + SESSIONS.data_out = self.backups[0] + SESSIONS.disconnect = self.backups[1] + settings.DEFAULT_HOME = self.backups[2] + settings.PROTOTYPE_MODULES = self.backups[3] + except AttributeError as err: + raise AttributeError(f"{err}: Teardown error. If you overrode the `setUp()` method " + "in your test, make sure you also added `super().setUp()`!") + + del SESSIONS[self.session.sessid] self.teardown_accounts() super().tearDown()