class TestAbstractions::Client

Attributes

base_uri[RW]
driver[RW]

Public Class Methods

build(base_uri: nil, driver: nil) click to toggle source
# File lib/test_abstractions/client.rb, line 15
def self.build(base_uri: nil, driver: nil)
  base_uri ||= Context.instance.base_uri
  driver = Context.instance.driver

  instance = new base_uri, driver
  instance
end
instance() click to toggle source
# File lib/test_abstractions/client.rb, line 11
def self.instance
  @instance ||= build
end
new(base_uri, driver) click to toggle source
# File lib/test_abstractions/client.rb, line 6
def initialize(base_uri, driver)
  @base_uri = base_uri
  @driver = driver
end

Public Instance Methods

absolute_uri(uri) click to toggle source
# File lib/test_abstractions/client.rb, line 36
def absolute_uri(uri)
  base = URI(base_uri)
  u = URI(uri)
  (base + u).to_s
end
click(selector) click to toggle source
# File lib/test_abstractions/client.rb, line 50
def click(selector)
  click_on(selector)
end
delegate_to_driver(meth, *args, &block) click to toggle source
# File lib/test_abstractions/client.rb, line 27
def delegate_to_driver(meth, *args, &block)
  driver.send meth, *args, &block
end
enter(content, selector) click to toggle source
# File lib/test_abstractions/client.rb, line 42
def enter(content, selector)
  driver.fill_in(selector, :with => content)
end
method_missing(meth, *args, &block) click to toggle source
# File lib/test_abstractions/client.rb, line 23
def method_missing(meth, *args, &block)
  delegate_to_driver(meth, *args, &block)        
end
open(uri) click to toggle source
# File lib/test_abstractions/client.rb, line 31
def open(uri)
  uri = absolute_uri(uri)
  driver.visit(uri)
end
select(option, selector) click to toggle source
# File lib/test_abstractions/client.rb, line 46
def select(option, selector)
  driver.select(option, :from => selector)
end