lib/selenium/link.rb in Selenium-1.0.9 vs lib/selenium/link.rb in Selenium-1.1.11

- old
+ new

@@ -1,41 +1,31 @@ module Selenium # Link class that models the behavior of a link - class Link - attr_reader :browser - + class Link < HtmlElement def Link::by_id(browser, id, target = nil) - Link.new(browser, "id=#{id}", target) + Link.new(WebPage.new(browser), "id=#{id}", target) end def Link::by_text(browser, text, target = nil) - Link.new(browser, "link=#{text}", target) + Link.new(WebPage.new(browser), "link=#{text}", target) end - def initialize(browser, locator, target = nil) - @browser = browser - @locator = locator + def initialize(webpage, locator, target = nil) + super(webpage, locator) @target = target end - # click the link - def click - @browser.click(@locator) + def with_target(target) + Link.new(webpage, locator, target.new(webpage.browser)) end - # click the link and wait for page to load - def click_wait - click - @browser.wait_for_page_to_load(30000) - end - # click the link, wait for the page to load, and asserts the target that # was passed in during initialization def go raise "target page not defined for link #{@locator}" unless @target click_wait - @target.assert_page + @target.ensure_present @target end end end