Adding have_xpath matcher for Selenium
This commit is contained in:
parent
0888c683a3
commit
881d9f388d
@ -2,6 +2,34 @@ module Webrat
|
|||||||
module Selenium
|
module Selenium
|
||||||
module Matchers
|
module Matchers
|
||||||
|
|
||||||
|
class HaveXpath
|
||||||
|
def initialize(expected)
|
||||||
|
@expected = expected
|
||||||
|
end
|
||||||
|
|
||||||
|
def matches?(response)
|
||||||
|
response.session.wait_for do
|
||||||
|
response.selenium.is_element_present("xpath=#{@expected}")
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
# ==== Returns
|
||||||
|
# String:: The failure message.
|
||||||
|
def failure_message
|
||||||
|
"expected following text to match xpath #{@expected}:\n#{@document}"
|
||||||
|
end
|
||||||
|
|
||||||
|
# ==== Returns
|
||||||
|
# String:: The failure message to be displayed in negative matches.
|
||||||
|
def negative_failure_message
|
||||||
|
"expected following text to not match xpath #{@expected}:\n#{@document}"
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
|
def have_xpath(xpath)
|
||||||
|
HaveXpath.new(xpath)
|
||||||
|
end
|
||||||
|
|
||||||
class HaveSelector
|
class HaveSelector
|
||||||
def initialize(expected)
|
def initialize(expected)
|
||||||
@expected = expected
|
@expected = expected
|
||||||
|
Loading…
Reference in New Issue
Block a user