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
honeybadger-2.4.0 vendor/gems/ruby/2.2.0/gems/cucumber-1.3.18/legacy_features/step_definitions/wire_steps.rb
honeybadger-2.4.0 vendor/gems/ruby/2.1.0/gems/cucumber-1.3.16/legacy_features/step_definitions/wire_steps.rb
honeybadger-2.4.0 vendor/gems/ruby/1.9.1/gems/cucumber-1.3.18/legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.20 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.19 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.18 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.17 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.16 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.15 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.14 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.13 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.12 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.11 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.10 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.9 legacy_features/step_definitions/wire_steps.rb
candlepin-api-0.4.0 bundle/ruby/1.9.1/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
candlepin-api-0.4.0 bundle/ruby/1.8/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
candlepin-api-0.4.0 bundle/ruby/gems/cucumber-1.2.1/legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.8 legacy_features/step_definitions/wire_steps.rb
cucumber-1.3.7 legacy_features/step_definitions/wire_steps.rb