Exemple #1
0
    def test_play_scenario_with_openstack(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj
        self.config_fixture.config(os_username='******')
        self.config_fixture.config(os_password='******')
        self.config_fixture.config(os_tenant_name='tenant')
        self.config_fixture.config(os_auth_url='auth-url')

        deploy_obj.deploy.return_value = {
            'ID': {'id': 'ID', 'mode': 'alone'}
        }

        # act!
        output = server.play_scenario(mock.MagicMock, self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder',
            server_endpoint='127.0.0.1:5999')
        openstack_params = dict(
            auth=dict(username='******', password='******',
                      tenant_name='tenant', auth_url='auth-url'),
            os_region_name='RegionOne',
            os_cacert=None, os_insecure=False)
        deploy_obj.connect_to_openstack.assert_called_once_with(
            openstack_params, 'shaker-flavor', 'shaker-image', None,
            ['8.8.8.8', '8.8.4.4'])
        deploy_obj.cleanup.assert_called_once_with()
Exemple #2
0
    def test_play_scenario(self, deploy_clz_mock, execute_mock, under_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj
        under_mock.return_value = False

        def _execute(output, quorum, execution, agents, matrix=None):
            output['records'].update({'UUID': {'id': 'UUID', 'status': 'ok'}})

        execute_mock.side_effect = _execute

        deploy_obj.deploy.return_value = {'ID': {'id': 'ID', 'mode': 'alone'}}

        # act!
        output = server.play_scenario(mock.MagicMock, self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)
        self.assertContainsSimilarRecord(
            {
                'status': 'ok',
                'id': 'UUID',
                'scenario': self.scenario['title']
            }, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment,
            base_dir='folder',
            server_endpoint='127.0.0.1:5999')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #3
0
    def test_play_scenario_with_openstack(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj
        self.config_fixture.config(os_username='******')
        self.config_fixture.config(os_password='******')
        self.config_fixture.config(os_tenant_name='tenant')
        self.config_fixture.config(os_auth_url='auth-url')

        deploy_obj.deploy.return_value = {
            'ID': {'id': 'ID', 'mode': 'alone'}
        }

        # act!
        output = server.play_scenario(self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder',
            server_endpoint='127.0.0.1:5999')
        openstack_params = dict(
            auth=dict(username='******', password='******',
                      tenant_name='tenant', auth_url='auth-url'),
            os_region_name='RegionOne',
            os_cacert=None, os_insecure=False)
        deploy_obj.connect_to_openstack.assert_called_once_with(
            openstack_params, 'shaker-flavor', 'shaker-image', None,
            ['8.8.8.8', '8.8.4.4'])
        deploy_obj.cleanup.assert_called_once_with()
Exemple #4
0
    def test_play_scenario(self, deploy_clz_mock, execute_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj

        def _execute(output, quorum, execution, agents, matrix=None):
            output['records'].update({'UUID': {'id': 'UUID', 'status': 'ok'}})

        execute_mock.side_effect = _execute

        deploy_obj.deploy.return_value = {
            'ID': {'id': 'ID', 'mode': 'alone'}
        }

        # act!
        output = server.play_scenario(self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)
        self.assertContainsSimilarRecord({
            'status': 'ok', 'id': 'UUID', 'scenario': self.scenario['title']},
            output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder',
            server_endpoint='127.0.0.1:5999')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #5
0
    def test_play_scenario_interrupted(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj

        deploy_obj.deploy.side_effect = KeyboardInterrupt

        # act!
        output = server.play_scenario(self.scenario)

        self.assertEqual(1, len(output['records']))
        self.assertContainsSimilarRecord({'status': 'interrupted'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #6
0
    def test_play_scenario_no_agents(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj

        deploy_obj.deploy.return_value = {}

        # act!
        output = server.play_scenario(self.scenario)

        self.assertEqual(1, len(output['records']))
        self.assertContainsSimilarRecord({'status': 'error'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #7
0
    def test_play_scenario_interrupted(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj

        deploy_obj.deploy.side_effect = KeyboardInterrupt

        # act!
        output = server.play_scenario(self.scenario)

        self.assertEqual(1, len(output['records']))
        self.assertContainsSimilarRecord({'status': 'interrupted'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder',
            server_endpoint='127.0.0.1:5999')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #8
0
    def test_play_scenario(self, deploy_clz_mock, execute_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj
        execute_mock.return_value = {'UUID': {'id': 'UUID', 'status': 'ok'}}

        deploy_obj.deploy.return_value = {
            'ID': {'id': 'ID', 'mode': 'alone'}
        }

        # act!
        output = server.play_scenario(self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)
        self.assertContainsSimilarRecord({
            'status': 'ok', 'id': 'UUID', 'scenario': self.scenario['title']},
            output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder')
        deploy_obj.cleanup.assert_called_once_with()
Exemple #9
0
    def test_play_scenario_with_openstack(self, deploy_clz_mock):
        deploy_obj = mock.Mock()
        deploy_clz_mock.return_value = deploy_obj
        self.config_fixture.config(os_username='******')
        self.config_fixture.config(os_password='******')
        self.config_fixture.config(os_tenant_name='tenant')
        self.config_fixture.config(os_auth_url='auth-url')

        deploy_obj.deploy.return_value = {
            'ID': {'id': 'ID', 'mode': 'alone'}
        }

        # act!
        output = server.play_scenario(self.scenario)

        self.assertNotContainsSimilarRecord({'status': 'error'}, output)

        deploy_obj.deploy.assert_called_once_with(
            self.deployment, base_dir='folder')
        deploy_obj.connect_to_openstack.assert_called_once_with(
            'user', 'password', 'tenant', 'auth-url', 'RegionOne', None,
            'shaker-flavor', 'shaker-image', None
        )
        deploy_obj.cleanup.assert_called_once_with()