mirror of
				https://github.com/inventree/InvenTree.git
				synced 2025-10-31 05:05:42 +00:00 
			
		
		
		
	activate plugins before testing
This commit is contained in:
		| @@ -22,6 +22,7 @@ import InvenTree.version | |||||||
| from common.models import InvenTreeSetting | from common.models import InvenTreeSetting | ||||||
| from .settings import MEDIA_URL, STATIC_URL | from .settings import MEDIA_URL, STATIC_URL | ||||||
| from common.settings import currency_code_default | from common.settings import currency_code_default | ||||||
|  | from plugin.models import PluginConfig | ||||||
|  |  | ||||||
| from djmoney.money import Money | from djmoney.money import Money | ||||||
|  |  | ||||||
| @@ -711,3 +712,12 @@ def inheritors(cls): | |||||||
|                 subcls.add(child) |                 subcls.add(child) | ||||||
|                 work.append(child) |                 work.append(child) | ||||||
|     return subcls |     return subcls | ||||||
|  |  | ||||||
|  |  | ||||||
|  | def setup_plugin(plg_key, plg_name): | ||||||
|  |     """ | ||||||
|  |     Enables plugins by reference | ||||||
|  |     """ | ||||||
|  |     plg_setting, _ = PluginConfig.objects.get_or_create(key=plg_key, name=plg_name) | ||||||
|  |     plg_setting.active = True | ||||||
|  |     plg_setting.save() | ||||||
|   | |||||||
| @@ -3,6 +3,10 @@ | |||||||
| from django.test import TestCase | from django.test import TestCase | ||||||
| from django.contrib.auth import get_user_model | from django.contrib.auth import get_user_model | ||||||
|  |  | ||||||
|  | from InvenTree.helpers import setup_plugin | ||||||
|  |  | ||||||
|  | from plugin.samples.integration.sample import SampleIntegrationPlugin | ||||||
|  |  | ||||||
|  |  | ||||||
| class SampleIntegrationPluginTests(TestCase): | class SampleIntegrationPluginTests(TestCase): | ||||||
|     """ Tests for SampleIntegrationPlugin """ |     """ Tests for SampleIntegrationPlugin """ | ||||||
| @@ -13,6 +17,7 @@ class SampleIntegrationPluginTests(TestCase): | |||||||
|         user.objects.create_user('testuser', 'test@testing.com', 'password') |         user.objects.create_user('testuser', 'test@testing.com', 'password') | ||||||
|  |  | ||||||
|         self.client.login(username='testuser', password='password') |         self.client.login(username='testuser', password='password') | ||||||
|  |         setup_plugin(SampleIntegrationPlugin.PLUGIN_SLUG, SampleIntegrationPlugin.PLUGIN_NAME) | ||||||
|  |  | ||||||
|     def test_view(self): |     def test_view(self): | ||||||
|         """check the function of the custom  sample plugin """ |         """check the function of the custom  sample plugin """ | ||||||
|   | |||||||
| @@ -7,7 +7,9 @@ from django.contrib.auth import get_user_model | |||||||
|  |  | ||||||
| from datetime import datetime | from datetime import datetime | ||||||
|  |  | ||||||
|  | from InvenTree.helpers import setup_plugin | ||||||
| from plugin.integration import AppMixin, IntegrationPluginBase, SettingsMixin, UrlsMixin, NavigationMixin | from plugin.integration import AppMixin, IntegrationPluginBase, SettingsMixin, UrlsMixin, NavigationMixin | ||||||
|  | from plugin.samples.integration.sample import SampleIntegrationPlugin | ||||||
|  |  | ||||||
|  |  | ||||||
| class BaseMixinDefinition: | class BaseMixinDefinition: | ||||||
| @@ -110,6 +112,8 @@ class AppMixinTest(BaseMixinDefinition, TestCase): | |||||||
|             pass |             pass | ||||||
|         self.mixin = TestCls() |         self.mixin = TestCls() | ||||||
|  |  | ||||||
|  |         setup_plugin(SampleIntegrationPlugin.PLUGIN_SLUG, SampleIntegrationPlugin.PLUGIN_NAME) | ||||||
|  |  | ||||||
|     def test_function(self): |     def test_function(self): | ||||||
|         # test that this plugin is in settings |         # test that this plugin is in settings | ||||||
|         self.assertIn('plugin.samples.integration', settings.INSTALLED_APPS) |         self.assertIn('plugin.samples.integration', settings.INSTALLED_APPS) | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user