Sha256: 3553a25d9bb7fada922f8fe09140074d4363ef795de8d268834b85512f40a10c
Contents?: true
Size: 1.99 KB
Versions: 10
Compression:
Stored size: 1.99 KB
Contents
require 'spec_helper' describe Arachni::BrowserCluster::Jobs::ResourceExploration::EventTrigger do before do @cluster = Arachni::BrowserCluster.new browser = Arachni::Browser.new browser.load url browser.each_element_with_events { |element, _| @element = element } browser.shutdown end let(:url) do Arachni::Utilities.normalize_url( web_server_url_for( :event_trigger ) ) end let(:event) { :click } let(:element) { @element } after do @cluster.shutdown end def test( job ) pages = [] @cluster.queue( job ) do |result| result.should be_kind_of described_class::Result pages << result.page end @cluster.wait pages.size.should == 2 page = pages.last page.dom.transitions.last.event.should == event Nokogiri::HTML( page.body ).xpath("//div[@id='my-div']").first.to_s.should == '<div id="my-div"><a href="#3">My link</a></div>' end context 'when the resource is a' do context String do it 'loads the URL and triggers the given event on the given element' do test described_class.new( resource: url, event: event, element: element ) end end context Arachni::HTTP::Response do it 'loads it and triggers the given event on the given element' do test described_class.new( resource: Arachni::HTTP::Client.get( url, mode: :sync ), event: event, element: element ) end end context Arachni::Page do it 'loads it and triggers the given event on the given element' do test described_class.new( resource: Arachni::Page.from_url( url ), event: event, element: element ) end end end end
Version data entries
10 entries across 10 versions & 1 rubygems