Sha256: aa4d48fea21d0c830b8d14dbab021edec6a8ad4eafff9182d663d88397f53e88

Contents?: true

Size: 1.49 KB

Versions: 52

Compression:

Stored size: 1.49 KB

Contents

require 'socket'
require 'json'
require 'cucumber/wire_support/connection'
require 'cucumber/wire_support/configuration'
require 'cucumber/wire_support/wire_packet'
require 'cucumber/wire_support/wire_exception'
require 'cucumber/wire_support/wire_step_definition'

module Cucumber
  module WireSupport
    
    # The wire-protocol (lanugage independent) implementation of the programming 
    # language API.
    class WireLanguage
      include LanguageSupport::LanguageMethods

      def initialize(step_mother)
        @connections = []
      end
      
      def alias_adverbs(adverbs)
      end

      def load_code_file(wire_file)
        config = Configuration.new(wire_file)
        @connections << Connection.new(config)
      end
      
      def snippet_text(code_keyword, step_name, multiline_arg_class)
        snippets = @connections.map do |remote| 
          remote.snippet_text(code_keyword, step_name, multiline_arg_class.to_s)
        end
        snippets.flatten.join("\n")
      end
      
      def step_matches(step_name, formatted_step_name)
        @connections.map{ |c| c.step_matches(step_name, formatted_step_name)}.flatten
      end
      
      protected
      
      def begin_scenario(scenario)
        @connections.each { |c| c.begin_scenario(scenario) }
        @current_scenario = scenario
      end
      
      def end_scenario
        scenario = @current_scenario
        @connections.each { |c| c.end_scenario(scenario) }
        @current_scenario = nil
      end
    end
  end
end

Version data entries

52 entries across 50 versions & 11 rubygems

Version Path
cucumber-1.1.9 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.8 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.7 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.6 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.5 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.4 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.3 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.2 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.1 lib/cucumber/wire_support/wire_language.rb
js-log-cucumber-1.0.2 lib/cucumber/wire_support/wire_language.rb
cucumber-1.1.0 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.6 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.5 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.4 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.3 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.2 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.1 lib/cucumber/wire_support/wire_language.rb
cucumber-1.0.0 lib/cucumber/wire_support/wire_language.rb
cucumber-0.8.6 lib/cucumber/wire_support/wire_language.rb
cucumber-0.10.7 lib/cucumber/wire_support/wire_language.rb