From a8265c36a194a5e807921899abee1fde1004df03 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20St=C3=BCrz?= Date: Tue, 4 Nov 2014 11:45:59 +0100 Subject: [PATCH] fixed valueOperator and added allowedValues selection --- tests/scripts/cmdmgr.py | 31 +++++++++++++++++++++++-------- 1 file changed, 23 insertions(+), 8 deletions(-) diff --git a/tests/scripts/cmdmgr.py b/tests/scripts/cmdmgr.py index 2ddb2f68..8b1df852 100755 --- a/tests/scripts/cmdmgr.py +++ b/tests/scripts/cmdmgr.py @@ -29,7 +29,6 @@ def get_selection(title, options): if not selection: print "-> error in selection" return - return int(selection) def send_command(method, params = None): @@ -68,6 +67,7 @@ def select_vendor(): selection = get_selection("Please select vendor", vendorList) if selection != None: return vendorIdList[selection] + def get_deviceClasses(vendorId = None): params = {}; @@ -136,26 +136,41 @@ def list_configured_devices(): def read_params(paramTypes): params = [] for paramType in paramTypes: - paramValue = raw_input("Please enter value for parameter %s (type: %s): " % (paramType['name'], paramType['type'])) - param = {} - param['name'] = paramType['name'] - param['value'] = paramValue -# param[paramType['name']] = paramValue + if any("allowedValues" in item for item in paramType): + selection = get_selection("Please select one of following allowed values:", paramType['allowedValues']) + paramValue = paramType['allowedValues'][selection] + param = {} + param['name'] = paramType['name'] + param['value'] = paramValue + else: + paramValue = raw_input("Please enter value for parameter %s (type: %s): " % (paramType['name'], paramType['type'])) + param = {} + param['name'] = paramType['name'] + param['value'] = paramValue params.append(param) print "got params:", params return params def select_valueOperator(): - valueOperators = ["OperatorTypeEquals", "OperatorTypeNotEquals", "OperatorTypeLess", "OperatorTypeGreater"] + valueOperators = ["ValueOperatorEquals", "ValueOperatorNotEquals", "ValueOperatorLess", "ValueOperatorGreater", "ValueOperatorLessOrEqual", "ValueOperatorGreaterOrEqual"] selection = get_selection("Please select an operator to compare this parameter: ", valueOperators) if selection != None: return valueOperators[selection] + +def select_stateOperator(): + stateOperators = ["StateOperatorAnd", "StateOperatorOr"] + selection = get_selection("Please select an operator to compare this state: ", stateOperators) + if selection != None: + return stateOperators[selection] + + def read_paramDescriptors(paramTypes): params = [] for paramType in paramTypes: - paramValue = raw_input("Please enter value for parameter %s (type: %s): " % (paramType['name'], paramType['type'])) + print paramType['allowedValues'] + paramValue = raw_input("Please enter value for parameter <%s> (type: %s): " % (paramType['name'], paramType['type'])) operator = select_valueOperator() param = {} param['name'] = paramType['name']