Sha256: c7e4149d110749a60b9af4c6754dac56341603025f3f87c5fd493d595a6999f5

Contents?: true

Size: 617 Bytes

Versions: 5

Compression:

Stored size: 617 Bytes

Contents

module Cucumber
  module RbSupport
    # Wrapper for Before, After and AfterStep hooks
    class RbHook
      attr_reader :tag_expressions, :location

      def initialize(rb_language, tag_expressions, proc)
        @rb_language = rb_language
        @tag_expressions = tag_expressions
        @proc = proc
        @location = Cucumber::Core::Ast::Location.from_source_location(*@proc.source_location)
      end

      def invoke(pseudo_method, arguments, &block)
        @rb_language.current_world.cucumber_instance_exec(false, pseudo_method, *[arguments, block].flatten.compact, &@proc)
      end
    end
  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
cucumber-2.99.0 lib/cucumber/rb_support/rb_hook.rb
mobiusloop-0.1.5 lib/cucumber/rb_support/rb_hook.rb
cucumber-2.4.0 lib/cucumber/rb_support/rb_hook.rb
mobiusloop-0.1.3 lib/cucumber/rb_support/rb_hook.rb
mobiusloop-0.1.2 lib/cucumber/rb_support/rb_hook.rb