2
0
mirror of https://github.com/inventree/InvenTree.git synced 2025-12-15 16:58:14 +00:00

Tweak unit testing

This commit is contained in:
Oliver Walters
2025-11-26 02:25:11 +00:00
parent 3268156410
commit 602f071405
5 changed files with 23 additions and 20 deletions

View File

@@ -2631,7 +2631,7 @@ class Parameter(
from plugin import PluginMixinEnum, registry
for plugin in registry.with_mixin(PluginMixinEnum.VALIDATION):
# Note: The validate_part_parameter function may raise a ValidationError
# Note: The validate_parameter function may raise a ValidationError
try:
if hasattr(plugin, 'validate_parameter'):
result = plugin.validate_parameter(self, self.data)

View File

@@ -236,9 +236,7 @@ class PartCategoryAPITest(InvenTreeAPITestCase):
n = ParameterTemplate.objects.count()
# Ensure validation of parameter values is disabled for these checks
InvenTreeSetting.set_setting(
'PART_PARAMETER_ENFORCE_UNITS', False, change_user=None
)
InvenTreeSetting.set_setting('PARAMETER_ENFORCE_UNITS', False, change_user=None)
for template in ParameterTemplate.objects.all():
response = self.post(

View File

@@ -252,9 +252,7 @@ class ParameterTests(TestCase):
raise ValueError('This test must be refactored...')
# Disable enforcing of part parameter units
InvenTreeSetting.set_setting(
'PART_PARAMETER_ENFORCE_UNITS', False, change_user=None
)
InvenTreeSetting.set_setting('PARAMETER_ENFORCE_UNITS', False, change_user=None)
# Invalid units also pass, but will be converted to the template units
for value in bad_values:
@@ -262,9 +260,7 @@ class ParameterTests(TestCase):
param.full_clean()
# Enable enforcing of part parameter units
InvenTreeSetting.set_setting(
'PART_PARAMETER_ENFORCE_UNITS', True, change_user=None
)
InvenTreeSetting.set_setting('PARAMETER_ENFORCE_UNITS', True, change_user=None)
for value in bad_values:
param = Parameter(content_object=prt, template=template, data=value)

View File

@@ -353,6 +353,15 @@ def parameter(
)
@register.simple_tag()
def part_parametr(instance, parameter_name):
"""Included for backwards compatibility - use 'parameter' tag instead.
Ref: https://github.com/inventree/InvenTree/pull/10699
"""
return parameter(instance, parameter_name)
@register.simple_tag()
def company_image(
company: Company, preview: bool = False, thumbnail: bool = False, **kwargs

View File

@@ -12,7 +12,7 @@ from django.utils.safestring import SafeString
from djmoney.money import Money
from PIL import Image
from common.models import InvenTreeSetting
from common.models import InvenTreeSetting, Parameter, ParameterTemplate
from InvenTree.config import get_testfolder_dir
from InvenTree.unit_test import InvenTreeTestCase
from part.models import Part # TODO fix import: PartParameter, PartParameterTemplate
@@ -406,16 +406,16 @@ class ReportTagTest(PartImageTestMixin, InvenTreeTestCase):
def test_part_parameter(self):
"""Test the part_parameter template tag."""
# TODO fix import: PartParameter, PartParameterTemplate
# # Test with a valid part
# part = Part.objects.create(name='test', description='test')
# t1 = PartParameterTemplate.objects.create(name='Template 1', units='mm')
# parameter = PartParameter.objects.create(part=part, template=t1, data='test')
# Test with a valid part
part = Part.objects.create(name='test', description='test')
t1 = ParameterTemplate.objects.create(name='Template 1', units='mm')
parameter = Parameter.objects.create(part=part, template=t1, data='test')
# self.assertEqual(report_tags.part_parameter(part, 'name'), None)
# self.assertEqual(report_tags.part_parameter(part, 'Template 1'), parameter)
# # Test with an invalid part
# self.assertEqual(report_tags.part_parameter(None, 'name'), None)
# Note, use the 'parameter' and 'part_parameter' tags interchangeably here
self.assertEqual(report_tags.part_parameter(part, 'name'), None)
self.assertEqual(report_tags.parameter(part, 'Template 1'), parameter)
# Test with an invalid part
self.assertEqual(report_tags.parameter(None, 'name'), None)
def test_render_currency(self):
"""Test the render_currency template tag."""