Sha256: f884a5821a4b20590cd1abf70d2491a6d2034ebe3afffeffb2affc6566f7f445

Contents?: true

Size: 1.04 KB

Versions: 2

Compression:

Stored size: 1.04 KB

Contents

class TestServiceWithWsdl
  include SoapObject

  wsdl 'http://www.webservicex.net/airport.asmx?WSDL'
  log_level :error

  def get_airport_name_for(airport_code)
    response = get_airport_information_by_airport_code airport_code: airport_code
    doc = Nokogiri::XML(response)
    doc.xpath('//Table/CityOrAirportName').first.content
  end
end

class TestServiceWithLocalWsdl
  include SoapObject

  wsdl "#{File.dirname(__FILE__)}/../wsdl/airport.asmx.wsdl"
end



Given /^I have the url for a remote wsdl$/ do
  @cls = TestServiceWithWsdl
end

Given /^I have a wsdl file residing locally$/ do
  @cls = TestServiceWithLocalWsdl
end

When /^I create an instance of the SoapObject class$/ do
  @so = @cls.new
end

Then /^I should have a connection$/ do
  @so.should be_connected
end

Then /^I should be able to determine the operations$/ do
  @so.operations.should include :get_airport_information_by_airport_code
end

Then /^I should be able to make a call and receive the correct results$/ do
  @so.get_airport_name_for('SFO').should == 'SAN FRANCISCO INTL'
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
soap-object-0.3 features/step_definitions/basic_functionality_steps.rb
soap-object-0.2 features/step_definitions/basic_functionality_steps.rb