X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/66c13b6055a363cb08197b8c5d040ed9a511c8ca..f98e0188777b3e2d229c968824b3e64307dae4e6:/services/nodemanager/tests/test_config.py diff --git a/services/nodemanager/tests/test_config.py b/services/nodemanager/tests/test_config.py index 3aa95410c4..921281bc51 100644 --- a/services/nodemanager/tests/test_config.py +++ b/services/nodemanager/tests/test_config.py @@ -1,4 +1,7 @@ #!/usr/bin/env python +# Copyright (C) The Arvados Authors. All rights reserved. +# +# SPDX-License-Identifier: AGPL-3.0 from __future__ import absolute_import, print_function @@ -6,6 +9,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 +27,7 @@ creds = dummy_creds [Size 1] cores = 1 +price = 0.8 [Logging] file = /dev/null @@ -53,6 +59,11 @@ testlogger = INFO size, kwargs = sizes[0] self.assertEqual('Small', size.name) self.assertEqual(1, kwargs['cores']) + self.assertEqual(0.8, kwargs['price']) + + def test_default_node_mem_scaling(self): + config = self.load_config() + self.assertEqual(0.95, config.getfloat('Daemon', 'node_mem_scaling')) def test_shutdown_windows(self): config = self.load_config() @@ -63,3 +74,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)