Sha256: 42af312480770ab7a6808fd6d4a7f7c42ec733f4328bee96e79f82006a062a9f

Contents?: true

Size: 822 Bytes

Versions: 73

Compression:

Stored size: 822 Bytes

Contents

Given /^there is a wire server (running |)on port (\d+) which understands the following protocol:$/ do |running, port, table|
  table.map_column!('response') {|cell| cell.gsub(/\n/, '\n')}
  protocol = table.hashes
  @server = FakeWireServer.new(port.to_i, protocol)
  start_wire_server if running.strip == "running"
end

Given /^the wire server takes (.*) seconds to respond to the invoke message$/ do |timeout|
  @server.delay_response(:invoke, timeout.to_f)
  start_wire_server
end

module WireHelper
  def start_wire_server
    @wire_pid = fork do
      at_exit { stop_wire_server }
      @server.run
    end
  end
  
  def stop_wire_server
    return unless @wire_pid
    Process.kill('KILL', @wire_pid)
    Process.wait
  end
end

Before('@wire') do
  extend(WireHelper)
end

After('@wire') do
  stop_wire_server
end

Version data entries

73 entries across 69 versions & 11 rubygems

Version Path
cucumber-1.3.6 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.5 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.4 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.3 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.2 legacy_features/step_definitions/wire_steps.rb
librarian-puppet-0.9.9 vendor/gems/ruby/1.9.1/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.1 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.0 legacy_features/step_definitions/wire_steps.rb
cucumber-1.2.5 legacy_features/step_definitions/wire_steps.rb
cucumber-1.2.3 legacy_features/step_definitions/wire_steps.rb
cucumber-1.2.2 legacy_features/step_definitions/wire_steps.rb
librarian-puppet-0.9.8 vendor/gems/ruby/1.9.1/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
librarian-puppet-0.9.4 vendor/gems/ruby/1.8/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
casecumber-1.0.2.1 legacy_features/step_definitions/wire_steps.rb
casecumber-1.2.1.cb2 legacy_features/step_definitions/wire_steps.rb
librarian-puppet-0.9.3 vendor/gems/ruby/1.8/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
cucumber-1.2.1 legacy_features/step_definitions/wire_steps.rb
resque-pool-0.3.0 vendor/bundle/ruby/1.8/gems/cucumber-1.1.9/legacy_features/step_definitions/wire_steps.rb
ftl-0.2.0 vendor/bundle/gems/cucumber-1.2.0/legacy_features/step_definitions/wire_steps.rb
cucumber-1.2.0 legacy_features/step_definitions/wire_steps.rb