Sergey Turivnyi 41d0f8ff83 Add sanity tests for testing actions with Node
Smoke tests for the Ironic CLI commands
which checks basic actions with node command like
create, update, delete etc.

Add get_table_headers() method that allows to
get table header from cmd output.
Add 'utils' module
Table structure tests have been updated.

Change-Id: If60b3720e9ce9a6a6c7e35880bf3f9c661d6f259
Implements: blueprint ironicclient-functional-tests
2015-11-26 16:37:12 +00:00

49 lines
1.3 KiB
Python

# Copyright (c) 2015 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
# 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 uuid
import six
def get_dict_from_output(output):
"""Parce list of dictonaries, return dictonary.
:param output: list of dictonaries
"""
obj = {}
for item in output:
obj[item['Property']] = six.text_type(item['Value'])
return obj
def get_object(object_list, object_value):
""""Get Ironic object by value from list of Ironic objects.
:param object_list: the output of the cmd
:param object_value: value to get
"""
for obj in object_list:
if object_value in obj.values():
return obj
def generate_name(prefix='test'):
"""Generate name for objects.
:param prefix: prefix of the generated name
"""
suffix = uuid.uuid4().hex
return "{0}-{1}".format(prefix, suffix)