class Lopata::Step

@private

Attributes

args[R]
block[R]
condition[R]
metadata[RW]

metadata overrien by the step.

method_name[R]
shared_step[R]

Public Class Methods

new(method_name, *args, condition: nil, shared_step: nil, &block) click to toggle source
# File lib/lopata/step.rb, line 10
def initialize(method_name, *args, condition: nil, shared_step: nil, &block)
  @method_name = method_name
  @args = args
  @block = block
  @shared_step = shared_step
  @condition = condition
  initialized! if defined? initialized!
end

Public Instance Methods

execution_steps(scenario, groups: []) click to toggle source
# File lib/lopata/step.rb, line 25
def execution_steps(scenario, groups: [])
  return [] if condition && !condition.match?(scenario)
  return [] unless block
  [StepExecution.new(self, groups, &block)]
end
title() click to toggle source
# File lib/lopata/step.rb, line 19
def title
  base_title = args.first
  base_title ||= shared_step && "#{method_name.capitalize} #{shared_step.name}" || "Untitled #{method_name}"
  base_title
end