class Spinach::Hooks

Spinach's hooks is a subscription mechanism to allow developers to define certain callbacks given several Spinach signals, like running a feature, executing a particular step and such.

Public Instance Methods

on_tag(tag) { |scenario, step_definitions| ... } click to toggle source

Runs before running a scenario with a particular tag

@param [String] tag

the tag to match

@example

Spinach.hooks.on_tag('javascript') do
  # change capybara driver
end
# File lib/spinach/hooks.rb, line 168
def on_tag(tag)
  before_scenario do |scenario, step_definitions|
    tags = scenario.tags
    next unless tags.any?
    yield(scenario, step_definitions) if tags.include? tag.to_s
  end
end