From e78092a18efe19d540709b3a2f7f36f6d8ece21e Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Vladim=C3=ADr=20Vondru=C5=A1?= Date: Wed, 8 Mar 2023 13:13:27 +0100 Subject: [PATCH] python: explicitly test all pluginmanager.AbstractManager interfaces. --- src/python/magnum/test/test_trade.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/src/python/magnum/test/test_trade.py b/src/python/magnum/test/test_trade.py index e03802d..0fb51d0 100644 --- a/src/python/magnum/test/test_trade.py +++ b/src/python/magnum/test/test_trade.py @@ -990,7 +990,10 @@ class SceneData(unittest.TestCase): class Importer(unittest.TestCase): def test_manager(self): manager = trade.ImporterManager() - self.assertIn('StbImageImporter', manager.alias_list) + self.assertIn('cz.mosra.magnum.Trade.AbstractImporter', manager.plugin_interface) + self.assertIn('importers', manager.plugin_directory) + self.assertIn('StbImageImporter', manager.plugin_list) + self.assertIn('PngImporter', manager.alias_list) self.assertEqual(manager.load_state('StbImageImporter'), pluginmanager.LoadState.NOT_LOADED) self.assertTrue(manager.load('StbImageImporter') & pluginmanager.LoadState.LOADED) @@ -1005,6 +1008,18 @@ class Importer(unittest.TestCase): importer = trade.ImporterManager().load_and_instantiate('StbImageImporter') self.assertEqual(importer.plugin, 'StbImageImporter') + def test_set_plugin_directory(self): + manager = trade.ImporterManager() + + plugin_directory = manager.plugin_directory + self.assertIn('PngImporter', manager.alias_list) + + manager.plugin_directory = "/nonexistent" + self.assertNotIn('PngImporter', manager.alias_list) + + manager.plugin_directory = plugin_directory + self.assertIn('PngImporter', manager.alias_list) + def test_set_preferred_plugins(self): manager = trade.ImporterManager() # TODO test this better once we can verify it gets actually loaded