mirror of
https://github.com/jazzband/django-auditlog.git
synced 2026-05-11 09:03:11 +00:00
Added test that reproduces the problem.
This commit is contained in:
parent
ba2c2e32be
commit
6afd964b64
2 changed files with 26 additions and 1 deletions
|
|
@ -200,6 +200,16 @@ class DateTimeFieldModel(models.Model):
|
|||
history = AuditlogHistoryField(delete_related=True)
|
||||
|
||||
|
||||
class DecimalFieldModel(models.Model):
|
||||
"""
|
||||
A model with a DecimalField, used to test DecimalField changes
|
||||
are detected properly.
|
||||
"""
|
||||
decimal = models.DecimalField(max_digits=18, decimal_places=2, default=0)
|
||||
|
||||
history = AuditlogHistoryField(delete_related=True)
|
||||
|
||||
|
||||
class ChoicesFieldModel(models.Model):
|
||||
"""
|
||||
A model with a CharField restricted to a set of choices.
|
||||
|
|
@ -341,6 +351,7 @@ auditlog.register(SimpleExcludeModel, exclude_fields=["text"])
|
|||
auditlog.register(SimpleMappingModel, mapping_fields={"sku": "Product No."})
|
||||
auditlog.register(AdditionalDataIncludedModel)
|
||||
auditlog.register(DateTimeFieldModel)
|
||||
auditlog.register(DecimalFieldModel)
|
||||
auditlog.register(ChoicesFieldModel)
|
||||
auditlog.register(CharfieldTextfieldModel)
|
||||
auditlog.register(PostgresArrayFieldModel)
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import warnings
|
|||
from datetime import timezone
|
||||
from unittest import mock
|
||||
from unittest.mock import patch
|
||||
from decimal import Decimal
|
||||
|
||||
import freezegun
|
||||
from dateutil.tz import gettz
|
||||
|
|
@ -41,6 +42,7 @@ from auditlog_tests.models import (
|
|||
AutoManyRelatedModel,
|
||||
CharfieldTextfieldModel,
|
||||
ChoicesFieldModel,
|
||||
DecimalFieldModel,
|
||||
DateTimeFieldModel,
|
||||
JSONModel,
|
||||
ManyRelatedModel,
|
||||
|
|
@ -1196,7 +1198,8 @@ class RegisterModelSettingsTest(TestCase):
|
|||
|
||||
self.assertTrue(self.test_auditlog.contains(SimpleExcludeModel))
|
||||
self.assertTrue(self.test_auditlog.contains(ChoicesFieldModel))
|
||||
self.assertEqual(len(self.test_auditlog.get_models()), 25)
|
||||
self.assertTrue(self.test_auditlog.contains(DecimalFieldModel))
|
||||
self.assertEqual(len(self.test_auditlog.get_models()), 26)
|
||||
|
||||
def test_register_models_register_model_with_attrs(self):
|
||||
self.test_auditlog._register_models(
|
||||
|
|
@ -1463,6 +1466,17 @@ class ChoicesFieldModelTest(TestCase):
|
|||
assert "related_models" in history.changes_display_dict
|
||||
|
||||
|
||||
class DecimalFieldModelTest(TestCase):
|
||||
|
||||
def setUp(self):
|
||||
self.obj = DecimalFieldModel.objects.create(decimal=0)
|
||||
|
||||
def test_no_changes_detected_after_saving_again(self):
|
||||
self.assertEqual(self.obj.history.count(), 1)
|
||||
self.obj.save()
|
||||
self.assertEqual(self.obj.history.count(), 1)
|
||||
|
||||
|
||||
class CharFieldTextFieldModelTest(TestCase):
|
||||
def setUp(self):
|
||||
self.PLACEHOLDER_LONGCHAR = "s" * 255
|
||||
|
|
|
|||
Loading…
Reference in a new issue