class Scoutui::Commands::DefineCommands

Public Instance Methods

execute(drv, e=nil) click to toggle source
# File lib/scoutui/commands/define_commands.rb, line 8
def execute(drv, e=nil)
  @drv=drv if !drv.nil?

  rc=false
  obj=nil
  _locator=nil

  _req = Scoutui::Utils::TestUtils.instance.getReq()

  begin

    Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " DefineCommand()"

    if e['page'].has_key?('id') && e['page'].has_key?('commands')

      id=e['page']['id'].to_s
      commands = e['page']['commands']
      Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " id, commands => #{id}, #{commands}"


      c=nil

      if e['page']['commands'].is_a?(String)

        _normCmd =  Scoutui::Base::UserVars.instance.normalize(e['page']['commands'].to_s)

        c=CmdShellMgr::DSL.instance.cmd(:cmd => "command(#{e['page']['id'].to_s}, #{_normCmd.to_s})")
      elsif e['page']['commands'].is_a?(Array)

        _cmd=""
        e['page']['commands'].each do |r|
          _cmd = _cmd + r.to_s + ";"
        end

        Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " command(#{e['page']['id'].to_s}, #{_cmd})"
        c=CmdShellMgr::DSL.instance.cmd(:cmd => "command(#{e['page']['id'].to_s}, #{_cmd})")


      else
        Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Unknown DSL cmd"

      end

      Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " c => #{c.class}"


      rc=true

    end


  rescue => ex
    Scoutui::Logger::LogMgr.instance.warn "Error during processing: #{ex}"
    Scoutui::Logger::LogMgr.instance.warn "Backtrace:\n\t#{ex.backtrace.join("\n\t")}"
  end

  if rc
    Scoutui::Logger::LogMgr.instance.asserts.info "Verify loadCommands passed - #{rc}"
    Testmgr::TestReport.instance.getReq(_req).testcase('click').add(rc, "Verify loadCommands command passed")
  end

  setResult(rc)
end