Converting legacy functions to ECMAScript

ECMAScript follows its own string parsing rules. Hence, while converting legacy functions to ECMAScript, ensure that you adhere to the following guidelines:
  • All strings must be enclosed in quotation marks, with appropriate escape sequences:
    • Quotation marks within the value of the string must be preceded by a backslash (\")
    • Backslashes must be preceded by another backslash (\\)
    Example legacy function:
    setTag(testFileName, C:\myfile.txt)
    After conversion to ECMAScript:
    setTag("testFileName", "C:\\myfile.txt")
  • Replace the null() function with the null keyword.
    Example legacy function:
    setTag(testTag, null())
    After conversion to ECMAScript:
    setTag(testTag, null)
  • Although the setTag() function is still valid in ECMAScript, you can assign values directly instead:
    Example legacy function:
    setTag(testTag, newValue)
    After conversion to ECMAScript:
    testTag = "newValue"
    or
    tags["testTag"] = "newValue"
  • Similarly, you can replace the legacy add() function with an operator:
    Example legacy function:
    add(%%testTag%%, 1)
    After conversion to ECMAScript:
    testTag + 1
  • ECMAScript functions do not recognize double percent signs (%%). Therefore, when you write a function, do not enclose the tags in double percent signs as you would in a legacy function. Rational® Integration Tester tags are automatically exposed as ECMAScript local variables.
    • In most cases, you can treat the tag name as a local variable:
      Example legacy function:
      xpath(%%xml%%, %%xpathString%%)
      After conversion to ECMAScript:
      xpath(xml, xpathString)
    • Tag names that include symbols or reserved words can cause problems; in those cases use the tags["tagname"] style of notation.
      Same example, after conversion to ECMAScript:
      xpath(tags["xml"], tags["xpathString"])

For more information, see this technote about using tags with ECMAScript.


Feedback