mirror of
https://github.com/inventree/InvenTree
synced 2024-08-30 18:33:04 +00:00
set_setting fnc + fixed settings test
This commit is contained in:
parent
b29650f3af
commit
c67f2aa2d7
@ -88,12 +88,23 @@ class SettingsMixin:
|
||||
return {f'PLUGIN_{self.slug.upper()}_{key}': value for key, value in self.settings.items()}
|
||||
return None
|
||||
|
||||
def _setting_name(self, key):
|
||||
"""get global name of setting"""
|
||||
return f'PLUGIN_{self.slug.upper()}_{key}'
|
||||
|
||||
def get_setting(self, key):
|
||||
"""
|
||||
get plugin setting by key
|
||||
"""
|
||||
from common.models import InvenTreeSetting
|
||||
return InvenTreeSetting.get_setting(f'PLUGIN_{self.slug.upper()}_{key}')
|
||||
return InvenTreeSetting.get_setting(self._setting_name(key))
|
||||
|
||||
def set_setting(self, key, value, user):
|
||||
"""
|
||||
set plugin setting by key
|
||||
"""
|
||||
from common.models import InvenTreeSetting
|
||||
return InvenTreeSetting.set_setting(self._setting_name(key), value, user)
|
||||
|
||||
|
||||
class UrlsMixin:
|
||||
|
@ -3,6 +3,7 @@
|
||||
from django.test import TestCase
|
||||
from django.conf import settings
|
||||
from django.conf.urls import url, include
|
||||
from django.contrib.auth import get_user_model
|
||||
|
||||
from datetime import datetime
|
||||
|
||||
@ -33,6 +34,9 @@ class SettingsMixinTest(BaseMixinDefinition, TestCase):
|
||||
pass
|
||||
self.mixin_nothing = NoSettingsCls()
|
||||
|
||||
user = get_user_model()
|
||||
self.test_user = user.objects.create_user('testuser', 'test@testing.com', 'password')
|
||||
|
||||
def test_function(self):
|
||||
# settings variable
|
||||
self.assertEqual(self.mixin.settings, self.TEST_SETTINGS)
|
||||
@ -50,7 +54,8 @@ class SettingsMixinTest(BaseMixinDefinition, TestCase):
|
||||
self.assertEqual(self.mixin.get_setting('ABCD'), '')
|
||||
self.assertEqual(self.mixin_nothing.get_setting('ABCD'), '')
|
||||
# right setting
|
||||
self.assertEqual(self.mixin.get_setting('SETTING1'), '123')
|
||||
self.assertEqual(self.mixin.set_setting('SETTING1'), '12345', self.test_user)
|
||||
self.assertEqual(self.mixin.get_setting('SETTING1'), '12345')
|
||||
# no setting
|
||||
self.assertEqual(self.mixin_nothing.get_setting(), '')
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user