class Scoutui::Commands::MouseOver
Public Instance Methods
_whenHovered(page_elt)
click to toggle source
# File lib/scoutui/commands/mouse_over.rb, line 7 def _whenHovered(page_elt) if page_elt.is_a?(Hash) && page_elt.has_key?('when_hovered') Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " Verify #{page_elt['when_hovered']}" page_elt['when_hovered'].each do |_elt| _r = _elt.keys[0].to_s _pg = _elt[_r] # _c = Scoutui::Commands::VerifyElement.new("verifyelement(" + _elt + ")") # _c.execute(@drv) Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " processPageElement(#{_pg})" if _pg.is_a?(Array) _pg.each do |_pg2| isVisible=Scoutui::Base::Assertions.instance.isVisible(@drv, _pg2, _r) end elsif _pg.is_a?(String) isVisible=Scoutui::Base::Assertions.instance.isVisible(@drv, _pg, _r) else Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " => #{_pg}" end # Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " IsVisible #{isVisible} - PAUSE"; gets end end end
execute(drv=nil)
click to toggle source
# File lib/scoutui/commands/mouse_over.rb, line 43 def execute(drv=nil) _rc=false _req = Scoutui::Utils::TestUtils.instance.getReq() Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " MouseOver.execute(#{@cmd})" @drv=drv if !drv.nil? begin _locator = @cmd.match(/^\s*mouseover\s*\((.*)\)/)[1].to_s.strip _locator = Scoutui::Base::UserVars.instance.normalize(_locator) obj = Scoutui::Base::QBrowser.getObject(@drv, _locator, Scoutui::Commands::Utils.instance.getTimeout) if !obj.nil? @drv.action.move_to(obj).perform _rc=true page_elt = Scoutui::Utils::TestUtils.instance.getPageElement(_locator) Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " PageElement(#{_locator}) => #{page_elt}" _whenHovered(page_elt) #------------ appModel = Scoutui::Utils::TestUtils.instance.getAppModel() triggers = appModel.itemize('visible_when', 'mouseover', _locator) Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " triggers => #{triggers}" if !(triggers.nil? || triggers.empty?) triggers.each do |_pageObj| _tObj=nil if !_pageObj.match(/^page\([\w\d]+\)/).nil? # _tObj = Scoutui::Base::VisualTestFramework.processPageElement(@drv, 'peter', _pageObj) _tLocator = Scoutui::Utils::TestUtils.instance.getPageElement(_pageObj) _tObj = Scoutui::Base::QBrowser.getFirstObject(@drv, _tLocator['locator']) # TODO: Avoid using getFirstObject else _tObj = Scoutui::Base::QBrowser.getFirstObject(@drv, _pageObj, Scoutui::Commands::Utils.instance.getTimeout()) # TODO: Avoid using getFirstObject end Scoutui::Logger::LogMgr.instance.debug __FILE__ + (__LINE__).to_s + " HIT #{_pageObj} => #{!_tObj.nil?}" Scoutui::Logger::LogMgr.instance.asserts.info "Verify #{_pageObj} is visible when mouseover #{_locator} - #{!_tObj.nil?.to_s}" Testmgr::TestReport.instance.getReq(_req).get_child('mouseover').add(!_tObj.nil?, "Verify #{_pageObj} is visible when mouseover #{_locator}") end end end rescue => ex Scoutui::Logger::LogMgr.instance.warn "Error during processing: #{$!}" Scoutui::Logger::LogMgr.instance.warn "Backtrace:\n\t#{ex.backtrace.join("\n\t")}" end Testmgr::TestReport.instance.getReq(_req).testcase('mouseover').add(!obj.nil?, "Verify object #{_locator} to mouseover exists : #{obj.class.to_s}") Testmgr::TestReport.instance.getReq(_req).testcase('mousseover').add(_rc, "Verify mouseover #{_rc} performed for #{_locator}") setResult(_rc) end