test/unit/test_fault.rb in lolsoap-0.1.4 vs test/unit/test_fault.rb in lolsoap-0.2.0
- old
+ new
@@ -2,32 +2,50 @@
require 'lolsoap/envelope'
require 'lolsoap/fault'
module LolSoap
describe Fault do
- let(:request) { OpenStruct.new(:soap_namespace => Envelope::SOAP_NAMESPACE) }
- let(:node) do
- doc = Nokogiri::XML(File.read(TEST_ROOT + '/fixtures/stock_quote_fault.xml'))
- doc.at_xpath('//soap:Fault', 'soap' => Envelope::SOAP_NAMESPACE)
- end
+ examples = proc do
+ describe '#code' do
+ it 'returns the code' do
+ subject.code.must_equal 'soap:Sender'
+ end
+ end
- subject { Fault.new(request, node) }
+ describe '#reason' do
+ it 'returns the reason' do
+ subject.reason.must_match(/^Omg.*crashed!$/)
+ end
+ end
- describe '#code' do
- it 'returns the code' do
- subject.code.must_equal 'soap:Sender'
+ describe '#detail' do
+ it 'returns the detail' do
+ subject.detail.must_equal '<Foo>Some detail</Foo>'
+ end
end
end
- describe '#reason' do
- it 'returns the reason' do
- subject.reason.must_match(/^Omg.*crashed!$/)
+ describe 'SOAP 1.1' do
+ let(:request) { OpenStruct.new(:soap_version => '1.2', :soap_namespace => Envelope::SOAP_1_2) }
+ let(:node) do
+ doc = Nokogiri::XML(File.read(TEST_ROOT + '/fixtures/stock_quote_fault.xml'))
+ doc.at_xpath('//soap:Fault', 'soap' => Envelope::SOAP_1_2)
end
+
+ subject { Fault.new(request, node) }
+
+ instance_eval(&examples)
end
- describe '#detail' do
- it 'returns the detail' do
- subject.detail.must_equal '<Foo>Some detail</Foo>'
+ describe 'SOAP 1.2' do
+ let(:request) { OpenStruct.new(:soap_version => '1.1', :soap_namespace => Envelope::SOAP_1_1) }
+ let(:node) do
+ doc = Nokogiri::XML(File.read(TEST_ROOT + '/fixtures/stock_quote_fault_soap_1_1.xml'))
+ doc.at_xpath('//soap:Fault', 'soap' => Envelope::SOAP_1_1)
end
+
+ subject { Fault.new(request, node) }
+
+ instance_eval(&examples)
end
end
end