module Kameleon::DSL
Public Instance Methods
act_as(name) { || ... }
click to toggle source
# File lib/kameleon/dsl.rb, line 44 def act_as(name) if block_given? using_session(name) do yield end else Capybara.session_name = name end self end
click(*args)
click to toggle source
# File lib/kameleon/dsl.rb, line 63 def click(*args) Kameleon::DSL::Act::Mouse::Click.new(*args).tap do |click| click.actions.each do |action| if block = action.block instance_exec(*action.params, &block) else page.send(action.method, *action.params) end end end end
create_session(name = :default)
click to toggle source
# File lib/kameleon/dsl.rb, line 40 def create_session(name = :default) Kameleon::Session.new(name).tap { |ks| act_as(ks.name) } end
fill_in(args)
click to toggle source
# File lib/kameleon/dsl.rb, line 75 def fill_in(args) Kameleon::DSL::Act::Form.new(args).tap do |form| form.actions.each do |action| if block = action.block instance_exec(*action.params, &block) else page.send(action.method, *action.params) end end end end
not_see(*args)
click to toggle source
! hmn - very similar to see
# File lib/kameleon/dsl.rb, line 28 def not_see(*args) Kameleon::DSL::Verify::Absence.new(*args).tap do |absence| absence.conditions.each do |condition| if condition.block instance_eval(condition.block) else page.should send(condition.method, *condition.params) end end end end
refresh_page()
click to toggle source
# File lib/kameleon/dsl.rb, line 87 def refresh_page visit current_url end
see(*args)
click to toggle source
# File lib/kameleon/dsl.rb, line 15 def see(*args) Kameleon::DSL::Verify::Presence.new(*args).tap do |presence| presence.conditions.each do |condition| if block = condition.block instance_exec(*condition.params, &block) else page.should send(condition.method, *condition.params) end end end end
within(*scope, &block)
click to toggle source
Calls superclass method
# File lib/kameleon/dsl.rb, line 55 def within(*scope, &block) if block_given? super(*parse_selector(scope).selector) else ScopeProxy.new(self, scope) end end
Private Instance Methods
parse_selector(scope)
click to toggle source
# File lib/kameleon/dsl.rb, line 93 def parse_selector(scope) Kameleon::DSL::Context::Scope.new(scope) end