summaryrefslogtreecommitdiff
path: root/ironicclient/tests/functional/base.py
diff options
context:
space:
mode:
authorSergey Turivnyi <sturivnyi@mirantis.com>2015-10-30 15:20:11 +0000
committerSergii Turivnyi <sturivnyi@mirantis.com>2016-02-19 13:37:39 +0000
commitd9c596708682b1829c455631f6cbe51aef7251ef (patch)
treef4b58574f3de6a7713c86e25795664c9ba3d140d /ironicclient/tests/functional/base.py
parente489e3b2fb30e0e75333ddadcdadc900c317bffa (diff)
downloadpython-ironicclient-d9c596708682b1829c455631f6cbe51aef7251ef.tar.gz
Add sanity tests for testing actions with Chassis
Smoke tests for the Ironic CLI commands which checks basic actions with chassis command like create, update, delete etc. Change-Id: Ib9d34aca954d25b6074ca785d5c3ac1e06c4297a Closes-Bug: #1527515
Diffstat (limited to 'ironicclient/tests/functional/base.py')
-rw-r--r--ironicclient/tests/functional/base.py36
1 files changed, 35 insertions, 1 deletions
diff --git a/ironicclient/tests/functional/base.py b/ironicclient/tests/functional/base.py
index 9f4c4d9..1839085 100644
--- a/ironicclient/tests/functional/base.py
+++ b/ironicclient/tests/functional/base.py
@@ -1,4 +1,4 @@
-# Copyright (c) 2015 Mirantis, Inc.
+# Copyright (c) 2016 Mirantis, Inc.
#
# 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
@@ -253,3 +253,37 @@ class FunctionalTestBase(base.ClientTestBase):
def get_drivers_names(self):
driver_list = self.list_driver()
return [x['Supported driver(s)'] for x in driver_list]
+
+ def delete_chassis(self, chassis_id):
+ chassis_list = self.list_chassis()
+
+ if utils.get_object(chassis_list, chassis_id):
+ self.ironic('chassis-delete', params=chassis_id)
+
+ def get_chassis_uuids_from_chassis_list(self):
+ chassis_list = self.list_chassis()
+ return [x['UUID'] for x in chassis_list]
+
+ def create_chassis(self, params=''):
+ chassis = self.ironic('chassis-create', params=params)
+
+ if not chassis:
+ self.fail('Ironic chassis has not been created!')
+
+ chassis = utils.get_dict_from_output(chassis)
+ self.addCleanup(self.delete_chassis, chassis['uuid'])
+ return chassis
+
+ def list_chassis(self, params=''):
+ return self.ironic('chassis-list', params=params)
+
+ def show_chassis(self, chassis_id, params=''):
+ chassis_show = self.ironic('chassis-show',
+ params='{0} {1}'.format(chassis_id, params))
+ return utils.get_dict_from_output(chassis_show)
+
+ def update_chassis(self, chassis_id, operation, params):
+ updated_chassis = self.ironic(
+ 'chassis-update',
+ params='{0} {1} {2}'.format(chassis_id, operation, params))
+ return utils.get_dict_from_output(updated_chassis)