String/Text functions 5 (WinRunner, TSL)
Parent page: Service Functions – String / WinRunner
CheckBox status value conversion
static const string_cb_state[] = { "ON" = ON, "OFF" = OFF, "DIMMED" = DIMMED, "TOGGLE" = TOGGLE }; ### static const integer_cb_state[] = { ON = "ON", OFF = "OFF", DIMMED = "DIMMED", TOGGLE = "TOGGLE" }; ### public function int_cb_state(in cb_state) { auto rc; rc = cb_state in string_cb_state; if (rc) return(string_cb_state[cb_state]); else return(""); } ### public function str_cb_state(in cb_state) { auto rc; rc = cb_state in integer_cb_state; if (rc) return(integer_cb_state[cb_state]); else return(""); }
Boolean value conversion
public function bool2str(in bool_value) { if (bool_value) return("TRUE"); else return("FALSE"); }
Execution Status value conversion
public function result2str(in res_value) { auto s; switch (res_value) { case PASS: # 0 s = "PASS"; break; case FAIL: # -1 s = "FAIL"; break; case 1: # OK s = "OK"; break; default: s = ""; } return(s); }
String-based Association to Dictionary conversion
public function str_args2dictionary(in args_str, inout dtDictionary[], in separator) { auto i, c, arg, key, value, dtArray[], dtDefinition[]; if (args_str == "") return(E_NOT_FOUND); if (separator == "") separator = _str_arg_separator; c = split(args_str, dtArray, separator); for (i=1;i<=c;i++) { arg = dtArray[i]; split(arg, dtDefinition, "="); key = str_trim(dtDefinition[1]); value = str_trim(dtDefinition[2]); dtDictionary[key] = value; delete dtDefinition[]; } return(E_OK); }
String-based data Set to Array conversion
public function str_enum2vector(in enum_str, inout dtVector[], in format_str) { auto i, c, dtArray[], s; if (enum_str == "") return(E_NOT_FOUND); if (format_str == "") format_str = "%s"; c = split(enum_str, dtArray, ","); delete dtVector[]; for (i=1;i<=c;i++) { s = str_trim(dtArray[i]); if (is_number(s) == E_OK) dtVector[i] = sprintf(format_str, s); else dtVector[i] = s; } dtVector[0] = c; return(E_OK); }