mirror of
https://github.com/inventree/InvenTree.git
synced 2025-07-01 11:10:54 +00:00
Metadata fix (#4725)
* Add 'clean' method to MetadataMixin class - Ensure that the "metadata" is a valid dict object * Add "overwrite" option for set_metadata method * Update unit tests * full_clean -> clean * Cleanup * Fix for MetadataMixin * Updates for unit tests * Test
This commit is contained in:
@ -303,8 +303,6 @@ class SalesOrderTest(TestCase):
|
||||
for model in [SalesOrder, SalesOrderLineItem, SalesOrderExtraLine, SalesOrderShipment]:
|
||||
p = model.objects.first()
|
||||
|
||||
self.assertIsNone(p.metadata)
|
||||
|
||||
self.assertIsNone(p.get_metadata('test'))
|
||||
self.assertEqual(p.get_metadata('test', backup_value=123), 123)
|
||||
|
||||
|
@ -390,7 +390,14 @@ class OrderTest(TestCase):
|
||||
"""Unit tests for the metadata field."""
|
||||
for model in [PurchaseOrder, PurchaseOrderLineItem, PurchaseOrderExtraLine]:
|
||||
p = model.objects.first()
|
||||
self.assertIsNone(p.metadata)
|
||||
|
||||
# Setting metadata to something *other* than a dict will fail
|
||||
with self.assertRaises(django_exceptions.ValidationError):
|
||||
p.metadata = 'test'
|
||||
p.save()
|
||||
|
||||
# Reset metadata to known state
|
||||
p.metadata = {}
|
||||
|
||||
self.assertIsNone(p.get_metadata('test'))
|
||||
self.assertEqual(p.get_metadata('test', backup_value=123), 123)
|
||||
|
Reference in New Issue
Block a user