class Gurke::Configuration

Attributes

default_retries[RW]

How often a scenario is retries on failure by default.

Defaults to none (0).

flaky_retries[RW]

How often a scenario marked as flaky is retries.

Defaults to one (1).

Public Class Methods

new() click to toggle source

@api private

# File lib/gurke/configuration.rb, line 8
def initialize
  @default_retries = 0
  @flaky_retries = 1
end

Public Instance Methods

after(action = :scenario, opts = nil, &block) click to toggle source

Define a after filter running after given action.

@example

Gurke.after(:step) do
  puts step.description
end

@param action [Symbol] A defined action like `:feature`,

`:scenario` or `:step`.

@yield After any matching action is executed.

# File lib/gurke/configuration.rb, line 62
def after(action = :scenario, opts = nil, &block)
  raise ArgumentError.new "Unknown hook: #{action}" unless hooks[action]

  hooks[action].append :after, Hook.new(opts, &block)
end
around(action = :scenario, opts = nil, &block) click to toggle source
# File lib/gurke/configuration.rb, line 44
def around(action = :scenario, opts = nil, &block)
  raise ArgumentError.new "Unknown hook: #{action}" unless hooks[action]

  hooks[action].append :around, Hook.new(opts, &block)
end
before(action = :scenario, opts = nil, &block) click to toggle source

Define a before filter running before given action.

@example

Gurke.before(:step) do
  puts step.description
end

@param action [Symbol] A defined action like `:feature`,

`:scenario` or `:step`.

@yield Before any matching action is executed.

# File lib/gurke/configuration.rb, line 38
def before(action = :scenario, opts = nil, &block)
  raise ArgumentError.new "Unknown hook: #{action}" unless hooks[action]

  hooks[action].append :before, Hook.new(opts, &block)
end
hooks() click to toggle source

@api private

# File lib/gurke/configuration.rb, line 87
def hooks
  @hooks ||= begin
    hooks = {
      features: HookSet.new,
      feature: HookSet.new,
      scenario: HookSet.new,
      step: HookSet.new,
      system: HookSet.new
    }

    hooks[:each] = hooks[:scenario]
    hooks
  end
end
include(mod, opts = {}) click to toggle source

Include given module into all or specific features or scenarios.

@example

Gurke.include(MyTestMethods)

@param mod [Module] Module to include. @param opts [Hash] Options.

# File lib/gurke/configuration.rb, line 77
def include(mod, opts = {})
  inclusions << Inclusion.new(mod, opts)
end
inclusions() click to toggle source

@api private

# File lib/gurke/configuration.rb, line 82
def inclusions
  @inclusions ||= []
end