Sha256: e3da8c6a0d0a37b82a62a8e8b91ffbf301a238f36fedbe285a869e706d548a76

Contents?: true

Size: 1.81 KB

Versions: 10

Compression:

Stored size: 1.81 KB

Contents

require 'testmgr'

module Scoutui::Commands::JsAlert

  class ExistsAlert < Scoutui::Commands::Command


    def execute(drv=nil)
      @drv=drv if !drv.nil?

      _rc=nil
      _alertExists=false

      Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " command => #{@cmd.to_s}"

      _action=@cmd.match(/(exist[s]*_*alert|existAlert|existsAlert|existsJsAlert|existsJsConfirm|existsJsPrompt)\s*\((.*)\)/i)[2].to_s.strip

      Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " ExistsAlert(#{_action})"

      alert=nil

      begin
        alert=@drv.switch_to.alert
        Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " | alert => #{alert.class.to_s}"

        _alertExists = alert.is_a?(Selenium::WebDriver::Alert)
        if _alertExists && !(_action.nil? && _action.empty?)
          _r = Regexp.new _action.to_s

          Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " _r => #{_r}"
          Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " _t => #{alert.text.to_s}"
          _rc=!alert.text.to_s.match(_r).nil?
        end

      rescue Selenium::WebDriver::Error::NoSuchAlertError
        alert=nil
      rescue Selenium::WebDriver::Error::WebDriverError
        # Support for phantomjs/ghostdriver per switch_to.alert()
        alert=nil
      end

      Testmgr::TestReport.instance.getReq('UI').testcase('expectJsAlert').add(_alertExists, "Verify JsAlert is present")

      if !(_action.nil? && _action.empty?)
        Testmgr::TestReport.instance.getReq('UI').get_child('expectJsAlert').add(_rc, "Verify JsAlert contains text #{_action}")


        setResult(_rc)
      end

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


    end


  end



end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
scoutui-2.0.5.4 lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.2.1.pre lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.3 lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.2 lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.1.1.pre lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.1 lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.0.1.pre lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.5.0 lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.4.2.pre lib/scoutui/commands/jsalert/action_jsalert.rb
scoutui-2.0.4.1.pre lib/scoutui/commands/jsalert/action_jsalert.rb