preload

String/Text functions 5 (WinRunner, TSL)

Posted by Albert Gareev on Mar 22, 2007 | Categories: Source codeText Data

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);    
}


Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported
This work by Albert Gareev is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported.