X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/66c13b6055a363cb08197b8c5d040ed9a511c8ca..3a0aa1db801154916f50b1b299d5100945a3e1df:/services/nodemanager/tests/test_config.py diff --git a/services/nodemanager/tests/test_config.py b/services/nodemanager/tests/test_config.py index 3aa95410c4..e566928654 100644 --- a/services/nodemanager/tests/test_config.py +++ b/services/nodemanager/tests/test_config.py @@ -6,6 +6,8 @@ import io import logging import unittest +import arvnodeman.computenode.dispatch as dispatch +import arvnodeman.computenode.dispatch.slurm as slurm_dispatch import arvnodeman.config as nmconfig class NodeManagerConfigTestCase(unittest.TestCase): @@ -22,6 +24,7 @@ creds = dummy_creds [Size 1] cores = 1 +price = 0.8 [Logging] file = /dev/null @@ -53,6 +56,7 @@ testlogger = INFO size, kwargs = sizes[0] self.assertEqual('Small', size.name) self.assertEqual(1, kwargs['cores']) + self.assertEqual(0.8, kwargs['price']) def test_shutdown_windows(self): config = self.load_config() @@ -63,3 +67,19 @@ testlogger = INFO self.assertEqual({'level': logging.DEBUG, 'testlogger': logging.INFO}, config.log_levels()) + + def check_dispatch_classes(self, config, module): + setup, shutdown, update, monitor = config.dispatch_classes() + self.assertIs(setup, module.ComputeNodeSetupActor) + self.assertIs(shutdown, module.ComputeNodeShutdownActor) + self.assertIs(update, module.ComputeNodeUpdateActor) + self.assertIs(monitor, module.ComputeNodeMonitorActor) + + def test_default_dispatch(self): + config = self.load_config() + self.check_dispatch_classes(config, dispatch) + + def test_custom_dispatch(self): + config = self.load_config( + config_str=self.TEST_CONFIG + "[Daemon]\ndispatcher=slurm\n") + self.check_dispatch_classes(config, slurm_dispatch)