mirror of
https://github.com/inventree/InvenTree.git
synced 2025-04-30 04:26:44 +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 {f'PLUGIN_{self.slug.upper()}_{key}': value for key, value in self.settings.items()}
|
||||||
return None
|
return None
|
||||||
|
|
||||||
|
def _setting_name(self, key):
|
||||||
|
"""get global name of setting"""
|
||||||
|
return f'PLUGIN_{self.slug.upper()}_{key}'
|
||||||
|
|
||||||
def get_setting(self, key):
|
def get_setting(self, key):
|
||||||
"""
|
"""
|
||||||
get plugin setting by key
|
get plugin setting by key
|
||||||
"""
|
"""
|
||||||
from common.models import InvenTreeSetting
|
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:
|
class UrlsMixin:
|
||||||
|
@ -3,6 +3,7 @@
|
|||||||
from django.test import TestCase
|
from django.test import TestCase
|
||||||
from django.conf import settings
|
from django.conf import settings
|
||||||
from django.conf.urls import url, include
|
from django.conf.urls import url, include
|
||||||
|
from django.contrib.auth import get_user_model
|
||||||
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
|
|
||||||
@ -33,6 +34,9 @@ class SettingsMixinTest(BaseMixinDefinition, TestCase):
|
|||||||
pass
|
pass
|
||||||
self.mixin_nothing = NoSettingsCls()
|
self.mixin_nothing = NoSettingsCls()
|
||||||
|
|
||||||
|
user = get_user_model()
|
||||||
|
self.test_user = user.objects.create_user('testuser', 'test@testing.com', 'password')
|
||||||
|
|
||||||
def test_function(self):
|
def test_function(self):
|
||||||
# settings variable
|
# settings variable
|
||||||
self.assertEqual(self.mixin.settings, self.TEST_SETTINGS)
|
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.get_setting('ABCD'), '')
|
||||||
self.assertEqual(self.mixin_nothing.get_setting('ABCD'), '')
|
self.assertEqual(self.mixin_nothing.get_setting('ABCD'), '')
|
||||||
# right setting
|
# 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
|
# no setting
|
||||||
self.assertEqual(self.mixin_nothing.get_setting(), '')
|
self.assertEqual(self.mixin_nothing.get_setting(), '')
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user