#!/usr/bin/env python ############################################################################## # Copyright (c) 2016 Huan Li and others # lihuansse@tongji.edu.cn # All rights reserved. This program and the accompanying materials # are made available under the terms of the Apache License, Version 2.0 # which accompanies this distribution, and is available at # http://www.apache.org/licenses/LICENSE-2.0 ############################################################################## # Unittest for yardstick.benchmark.scenarios.availability.operation.baseoperation import mock import unittest from yardstick.benchmark.scenarios.availability.operation import baseoperation @mock.patch('yardstick.benchmark.scenarios.availability.operation.baseoperation.BaseOperation') class OperationMgrTestCase(unittest.TestCase): def setUp(self): config = { 'operation_type': 'general-operation', 'key' : 'service_status' } self.operation_configs = [] self.operation_configs.append(config) def test_all_successful(self, mock_operation): mgr_ins = baseoperation.OperationMgr() mgr_ins.init_operations(self.operation_configs, None) operation_ins = mgr_ins["service_status"] mgr_ins.rollback() def test_getitem_fail(self, mock_operation): mgr_ins = baseoperation.OperationMgr() mgr_ins.init_operations(self.operation_configs, None) with self.assertRaises(KeyError): operation_ins = mgr_ins["operation-not-exist"] class TestOperation(baseoperation.BaseOperation): __operation__type__ = "test-operation" def setup(self): pass def run(self): pass def rollback(self): pass class BaseOperationTestCase(unittest.TestCase): def setUp(self): self.config = { 'operation_type': 'general-operation', 'key' : 'service_status' } def test_all_successful(self): base_ins = baseoperation.BaseOperation(self.config, None) base_ins.setup() base_ins.run() base_ins.rollback() def test_get_script_fullpath(self): base_ins = baseoperation.BaseOperation(self.config, None) base_ins.get_script_fullpath("ha_tools/test.bash"); def test_get_operation_cls_successful(self): base_ins = baseoperation.BaseOperation(self.config, None) operation_ins = base_ins.get_operation_cls("test-operation") def test_get_operation_cls_fail(self): base_ins = baseoperation.BaseOperation(self.config, None) with self.assertRaises(RuntimeError): operation_ins = base_ins.get_operation_cls("operation-not-exist")