1 ##############################################################################
2 # Copyright (c) 2016 Dan Radez (dradez@redhat.com) (Red Hat)
4 # All rights reserved. This program and the accompanying materials
5 # are made available under the terms of the Apache License, Version 2.0
6 # which accompanies this distribution, and is available at
7 # http://www.apache.org/licenses/LICENSE-2.0
8 ##############################################################################
12 from mock import patch
13 from mock import MagicMock
14 from mock import mock_open
16 from apex.overcloud.config import create_nic_template
17 from apex.common.exceptions import ApexDeployException
19 from nose.tools import (
20 assert_regexp_matches,
25 class TestOvercloudConfig(unittest.TestCase):
28 """This method is run once for each class before any tests are run"""
31 def teardown_class(cls):
32 """This method is run once for each class _after_ all tests are run"""
35 """This method is run once before _each_ test method is executed"""
38 """This method is run once after _each_ test method is executed"""
40 def test_create_nic_template_invalid_role(self):
41 assert_raises(ApexDeployException, create_nic_template,
42 None, None, None, None, None)
44 @patch('apex.overcloud.config.Environment')
45 @patch('builtins.open', mock_open(read_data=None), create=True)
46 def test_create_nic_template_ctl_fdio(self, mock_env):
47 network_settings = MagicMock()
48 deploy_settings = MagicMock()
49 deploy_settings.get.return_value = {'dataplane': 'fdio',
50 'sdn_controller': 'opendaylight'}
52 create_nic_template(network_settings, deploy_settings,
53 'controller', 'template_dir', 'target_dir')
55 @patch('apex.overcloud.config.Environment')
56 @patch('builtins.open', mock_open(read_data=None), create=True)
57 def test_create_nic_template_ctl_ovs_dpdk(self, mock_env):
58 network_settings = MagicMock()
59 deploy_settings = MagicMock()
60 deploy_settings.get.return_value = {'dataplane': 'ovs_dpdk',
61 'sdn_controller': 'opendaylight',
63 create_nic_template(network_settings, deploy_settings,
64 'controller', 'template_dir', 'target_dir')
66 @patch('apex.overcloud.config.Environment')
67 @patch('builtins.open', mock_open(read_data=None), create=True)
68 def test_create_nic_template_comp_fdio(self, mock_env):
69 network_settings = MagicMock()
70 deploy_settings = MagicMock()
71 deploy_settings.get.return_value = {'performance':
74 {'uio-driver': 'test',
75 'interface-options': 'test'}}},
78 'sdn_controller': 'opendaylight'}
79 create_nic_template(network_settings, deploy_settings,
80 'compute', 'template_dir', 'target_dir')