From b4a81ee0bc5cbcbd2980366d76594337d9630cf5 Mon Sep 17 00:00:00 2001 From: Roberto Rosario Date: Wed, 30 Jan 2019 03:29:12 -0400 Subject: [PATCH] Random ID test mixin: Restore save method Signed-off-by: Roberto Rosario --- mayan/apps/common/tests/mixins.py | 22 +++++++++++++--------- 1 file changed, 13 insertions(+), 9 deletions(-) diff --git a/mayan/apps/common/tests/mixins.py b/mayan/apps/common/tests/mixins.py index 9f3fa318f7..565a25f569 100644 --- a/mayan/apps/common/tests/mixins.py +++ b/mayan/apps/common/tests/mixins.py @@ -170,22 +170,26 @@ class RandomPrimaryKeyModelMonkeyPatchMixin(object): return primary_key def setUp(self): - original_save = models.Model.save + self.method_save_original = models.Model.save - def new_save(self, *args, **kwargs): - if self.pk: - return original_save(self, *args, **kwargs) + def method_save_new(instance, *args, **kwargs): + if instance.pk: + return self.method_save_original(instance, *args, **kwargs) else: - self.pk = RandomPrimaryKeyModelMonkeyPatchMixin.get_unique_primary_key( - model=self._meta.model + instance.pk = RandomPrimaryKeyModelMonkeyPatchMixin.get_unique_primary_key( + model=instance._meta.model ) - self.id = self.pk + instance.id = instance.pk - return self.save_base(force_insert=True) + return instance.save_base(force_insert=True) - setattr(models.Model, 'save', new_save) + setattr(models.Model, 'save', method_save_new) super(RandomPrimaryKeyModelMonkeyPatchMixin, self).setUp() + def tearDown(self): + models.Model.save = self.method_save_original + super(RandomPrimaryKeyModelMonkeyPatchMixin, self).tearDown() + class TempfileCheckTestCaseMixin(object): # Ignore the jvmstat instrumentation and GitLab's CI .config files