rally/tests/cmd/test_manage.py
Pierre Padrixe c85cb350cc Fix envutils.get_global (prev. default_deployment_id) errors management
* Since envutils.get_global doesn't raise anymore 'InvalidArgumentsException'
(due to this fix https://launchpad.net/rally/+bug/1291298) we are encountering
issues when get_global simply returns None. That's why the bool parameter
doRaise was added to get_global, so when needed the method will raise
'InvalidArgumentsException' and in the case of #1291298 get_global won't raise
any exception and will simply return None.
* Fixed unit test of Tempest Install command, deploy_id was always None in the
unit test and once the above modification applied, an InvalidArgumentsException
was raised which caused the failing of the test.

Change-Id: I18e2ac99e6412c3ae67769390e390d4210243381
Closes-Bug: #1293454
2014-03-26 17:32:39 +01:00

60 lines
1.9 KiB
Python

# Copyright 2013: Mirantis Inc.
# All Rights Reserved.
#
# Licensed under the Apache License, Version 2.0 (the "License"); you may
# not use this file except in compliance with the License. You may obtain
# a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
# WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
# License for the specific language governing permissions and limitations
# under the License.
import mock
import sys
import uuid
from rally.cmd import manage
from tests import test
class CmdManageTestCase(test.TestCase):
@mock.patch('rally.cmd.manage.cliutils')
def test_main(self, cli_mock):
manage.main()
categories = {'db': manage.DBCommands,
'tempest': manage.TempestCommands}
cli_mock.run.assert_called_once_with(sys.argv, categories)
class DBCommandsTestCase(test.TestCase):
def setUp(self):
super(DBCommandsTestCase, self).setUp()
self.db_commands = manage.DBCommands()
@mock.patch('rally.cmd.manage.db')
def test_recreate(self, mock_db):
self.db_commands.recreate()
calls = [mock.call.db_drop(), mock.call.db_create()]
self.assertEqual(calls, mock_db.mock_calls)
class TempestCommandsTestCase(test.TestCase):
def setUp(self):
super(TempestCommandsTestCase, self).setUp()
self.tempest_commands = manage.TempestCommands()
self.tempest = mock.Mock()
@mock.patch('rally.verification.verifiers.tempest.tempest.Tempest')
def test_install(self, mock_tempest):
deploy_id = str(uuid.uuid4())
mock_tempest.return_value = self.tempest
self.tempest_commands.install(deploy_id)
self.tempest.install.assert_called_once_with()