WebTelnetScreenVerifyText Function

Action

Verifies rendered screen content in an active Telnet connection.

Include file

WebAPI.bdh

Syntax

WebTelnetScreenVerifyText(    in  hWeb      : number,
                              in  nCol      : number,
                              in  nRow      : number,
                              in  sVerify   : string,
                              in  nOptions  : number optional,
                              in  nSeverity : number optional := SEVERITY_ERROR,
                              in  nLength   : number optional,
                              out sRecv     : string optional ) : boolean;

Return value

  • true if the operation succeeded

  • false otherwise

Parameter Description
hWeb Valid handle to a Web connection created by WebTcpipConnect and set to Telnet mode using WebTcpipSetTelnetMode.
nCol 1-based screen column from where to perform the text comparison.
nRow 1-based screen row from where to perform the text comparison.
sVerify Text to compare.
nOptions

By default the retrieved content has to be equal with the compared sVerify string, case-insensitively (optional). Comparison options are:

  • TELNET_FLAG_EQUAL: Comparison is made against both whole strings. (default)

  • TELNET_FLAG_CASE_SENSITIVE: Perform comparison case-sensitively.

  • TELNET_FLAG_IS_DIFFERENT: Negates the logical comparison.

  • TELNET_FLAG_IGNORE_WHITE_SPACE: All whitespaces in both compared strings are cut before comparison is performed.

  • TELNET_FLAG_CONTAINS: Compared string must occur within the retrieved content.

  • TELNET_FLAG_FROM_LEFT: The retrieved content only has to begin with the compared string.

  • TELNET_FLAG_TRIM_LEFT: Leading blanks are trimmed from retrieved content before comparison.

  • TELNET_FLAG_TRIM_RIGHT: Trailing blanks are trimmed from retrieved content before comparison.

  • TELNET_FLAG_TRIM_BOTH: Rendered text is trimmed from both sides before comparison.

  • TELNET_FLAG_FROM_RIGHT: Comparison is made from the right of the retrieved content.

nSeverity Optional: Severity of the error that is raised if the verification fails. Can be one of the following values:
  • SEVERITY_SUCCESS: Success; no error (numerical value: 0)
  • SEVERITY_INFORMATIONAL: Informational; no error (numerical value: 1)
  • SEVERITY_WARNING: Warning; no error (numerical value: 2)
  • SEVERITY_ERROR: (Default) Error; simulation continues (numerical value: 3)
  • SEVERITY_TRANS_EXIT: Error; the active transaction is aborted (numerical value: 4)
  • SEVERITY_PROCESS_EXIT: Error; the simulation is aborted (numerical value: 5)
nTextLength Length of screen portion to compare with sVerify (optional). If omitted or 0, the length of sVerify is compared.
sRecv Optional string variable indicating given position where screen portion is to be placed (optional).

Example

dcltrans
  transaction TInit
  begin
    StrSetHostCP(1148); // 1148  (IBM EBCDIC - International (500 + Euro))
  end TInit;
  transaction TMain
  var
    hWeb0     : number;
    iFieldPos : number;
    sRecv     : string;
  begin
    WebTcpipConnect(hWeb0, "My.TelnetHost.IP", WEB_PORT_TELNET); // Port: 23
    WebTcpipSetTelnetMode(hWeb0, TERMINAL_TYPE_3270, 80, 24, true,
      TELNET_MODEOPT_RFC_1576 | TELNET_MODEOPT_AUTO_RECV);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_TerminalType);
    WebTelnetSendCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_TerminalType);
    WebTelnetRecvSubNegotiation(hWeb0, TELNET_OPT_TerminalType);
    WebTelnetSendTerminalType(hWeb0, "IBM-3278-2-E");
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_EndOfRecord);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_EndOfRecord);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_TransmitBinary);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_TransmitBinary);
    WebTelnetSendCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_EndOfRecord);
    WebTelnetSendCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_EndOfRecord);
    WebTelnetSendCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_TransmitBinary);
    WebTelnetSendCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_TransmitBinary);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_DO, TELNET_OPT_TransmitBinary);
    WebTelnetRecvCommand(hWeb0, TELNET_CMD_WILL, TELNET_OPT_TransmitBinary);
    WebTelnetRecvRecord(hWeb0);
    WebTelnetRecvRecord(hWeb0);
    WebTelnetSendRecord(hWeb0,
      "\h88001181A600000B0100005000180050" // ····¦······P···P 00000000
 
      "\h001800168186000800F4F1F1F2F2F3F3" // ·········ôññòòóó 00000010
 
      "\hF4F4F5F5F6F6F7F7000D81870400F0F1" // ôôõõöö÷÷······ðñ 00000020
 
      "\hF1F2F2F4F40007818800010200178181" // ñòòôô··········· 00000030
 
      "\h01000050001801000100030004000909" // ···P············ 00000040
 
      "\h0C0780001B81858200090C0000000007" // ················ 00000050

      "\h00000002B900250100F103C301360006" // ····¹·%··ñ·Ã·6·· 00000060
 
      "\h81990000001281970000080008000101" // ················ 00000070
 
      "\h000B0401C0C1000981A80200F0FFFFFF" // ····ÀÁ···¨··ð··· 00000080

      "\hFF000C81950000081108110101000F81" // ················ 00000090
 
      "\h80A687888185869997A89580"); // ·¦·······¨·· 000000A0  

    WebTelnetScreenRecvRecordsUntilCursor(hWeb0, 16, 23, sRecv);
    if WebTelnetScreenVerifyText(hWeb0, 7, 22, "Comments") then
      WebTelnetSendRecord(hWeb0, "\h7D5B6F115B6F" + StrToHostCP("1"));
      WebTelnetScreenRecvRecordsUntilStatus(hWeb0, "Keyboard Locked", "false");
      WebTelnetSendRecord(hWeb0, "\h7D5BF0115BF0" + StrToHostCP("12"));
      WebTelnetScreenVerifyText(hWeb0, 6, 22, "Choice:");    
      WebTelnetSendRecord(hWeb0, "\h7D5A5E115A5E" + StrToHostCP("12"));
      WebTelnetScreenRecvRecordsUntilField(hWeb0, 1, " ");
      WebTcpipShutdown(hWeb0);
    else
      WebTcpipShutdown(hWeb0);
    end;
  end TMain;