Sha256: 64c8bd23b27f7bc5b1c4cb07e8a5f29af1de3b3cb10f7e904353286dcdc5a465

Contents?: true

Size: 919 Bytes

Versions: 5

Compression:

Stored size: 919 Bytes

Contents

# frozen_string_literal: true

require 'forwardable'
require 'cucumber/core/test/doc_string'

module Cucumber
  class Runtime
    # This is what a programming language will consider to be a runtime.
    #
    # It's a thin class that directs the handful of methods needed by the programming languages to the right place
    class ForProgrammingLanguages
      extend Forwardable

      attr_reader :support_code

      def initialize(support_code, user_interface)
        @support_code = support_code
        @user_interface = user_interface
      end

      def_delegators :@user_interface,
                     :embed,
                     :attach,
                     :ask,
                     :puts,
                     :features_paths,
                     :step_match

      def_delegators :@support_code,
                     :invoke_dynamic_steps,
                     :invoke_dynamic_step
    end
  end
end

Version data entries

5 entries across 5 versions & 2 rubygems

Version Path
cucumber-9.2.0 lib/cucumber/runtime/for_programming_languages.rb
cucumber-9.1.2 lib/cucumber/runtime/for_programming_languages.rb
cucumber-9.1.1 lib/cucumber/runtime/for_programming_languages.rb
honeybadger-5.4.0 vendor/bundle/ruby/3.2.0/gems/cucumber-9.1.0/lib/cucumber/runtime/for_programming_languages.rb
cucumber-9.1.0 lib/cucumber/runtime/for_programming_languages.rb