mirror of
				https://github.com/inventree/InvenTree.git
				synced 2025-10-30 20:55:42 +00:00 
			
		
		
		
	set_setting fnc + fixed settings test
This commit is contained in:
		| @@ -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(), '') | ||||||
|  |  | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user