diff options
Diffstat (limited to 'catapult/telemetry/telemetry/internal/util/binary_manager_unittest.py')
-rw-r--r-- | catapult/telemetry/telemetry/internal/util/binary_manager_unittest.py | 52 |
1 files changed, 52 insertions, 0 deletions
diff --git a/catapult/telemetry/telemetry/internal/util/binary_manager_unittest.py b/catapult/telemetry/telemetry/internal/util/binary_manager_unittest.py new file mode 100644 index 00000000..acf63b4a --- /dev/null +++ b/catapult/telemetry/telemetry/internal/util/binary_manager_unittest.py @@ -0,0 +1,52 @@ +# Copyright 2015 The Chromium Authors. All rights reserved. +# Use of this source code is governed by a BSD-style license that can be +# found in the LICENSE file. + +import unittest + +from telemetry.core import exceptions +from telemetry.internal.util import binary_manager +import mock + + +class BinaryManagerTest(unittest.TestCase): + def setUp(self): + # We need to preserve the real initialized dependecny_manager. + self.actual_binary_manager = binary_manager._binary_manager + binary_manager._binary_manager = None + + def tearDown(self): + binary_manager._binary_manager = self.actual_binary_manager + + def testReinitialization(self): + binary_manager.InitDependencyManager(None) + self.assertRaises(exceptions.InitializationError, + binary_manager.InitDependencyManager, None) + + @mock.patch('py_utils.binary_manager.BinaryManager') + def testFetchPathInitialized(self, binary_manager_mock): + expected = [mock.call.binary_manager.BinaryManager( + ['base_config_object']), + mock.call.binary_manager.BinaryManager().FetchPath( + 'dep', 'plat_arch')] + binary_manager.InitDependencyManager(None) + binary_manager.FetchPath('dep', 'plat', 'arch') + binary_manager_mock.assert_call_args(expected) + + def testFetchPathUninitialized(self): + self.assertRaises(exceptions.InitializationError, + binary_manager.FetchPath, 'dep', 'plat', 'arch') + + @mock.patch('py_utils.binary_manager.BinaryManager') + def testLocalPathInitialized(self, binary_manager_mock): + expected = [mock.call.binary_manager.BinaryManager( + ['base_config_object']), + mock.call.binary_manager.BinaryManager().LocalPath( + 'dep', 'plat_arch')] + binary_manager.InitDependencyManager(None) + binary_manager.LocalPath('dep', 'plat', 'arch') + binary_manager_mock.assert_call_args(expected) + + def testLocalPathUninitialized(self): + self.assertRaises(exceptions.InitializationError, + binary_manager.LocalPath, 'dep', 'plat', 'arch') |