ratis 3.1.0 → 3.1.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/.gitignore +6 -0
- data/.rspec +3 -0
- data/.rvmrc +1 -0
- data/CHANGELOG +3 -0
- data/Gemfile +4 -0
- data/Gemfile.lock +89 -0
- data/Rakefile +8 -0
- data/lib/ratis/next_bus.rb +1 -1
- data/lib/ratis/next_bus2.rb +1 -1
- data/lib/ratis/schedule_nearby.rb +1 -1
- data/lib/ratis/version.rb +1 -1
- data/ratis.gemspec +33 -0
- data/spec/ratis/area_spec.rb +41 -0
- data/spec/ratis/closest_stop_spec.rb +99 -0
- data/spec/ratis/config_spec.rb +44 -0
- data/spec/ratis/core_ext_spec.rb +54 -0
- data/spec/ratis/itinerary_spec.rb +722 -0
- data/spec/ratis/landmark_category_spec.rb +46 -0
- data/spec/ratis/landmark_spec.rb +63 -0
- data/spec/ratis/location_spec.rb +207 -0
- data/spec/ratis/next_bus2_spec.rb +148 -0
- data/spec/ratis/next_bus_spec.rb +230 -0
- data/spec/ratis/pattern_spec.rb +122 -0
- data/spec/ratis/point_2_point_spec.rb +223 -0
- data/spec/ratis/request_spec.rb +132 -0
- data/spec/ratis/route_pattern_spec.rb +123 -0
- data/spec/ratis/route_spec.rb +75 -0
- data/spec/ratis/route_stops_spec.rb +82 -0
- data/spec/ratis/schedule_nearby_spec.rb +153 -0
- data/spec/ratis/timetable_spec.rb +115 -0
- data/spec/ratis/walk_spec.rb +72 -0
- data/spec/spec_helper.rb +45 -0
- data/spec/support/ratis_helpers.rb +96 -0
- data/spec/support/vcr_cassettes/Point2Point.yml +200 -0
- metadata +64 -34
@@ -0,0 +1,115 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Ratis::Timetable do
|
4
|
+
before do
|
5
|
+
Ratis.reset
|
6
|
+
Ratis.configure do |config|
|
7
|
+
config.endpoint = 'http://soap.valleymetro.org/cgi-bin-soap-web-252/soap.cgi'
|
8
|
+
config.namespace = 'PX_WEB'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe '#where' do
|
13
|
+
|
14
|
+
before do
|
15
|
+
@today = Time.now.strftime("%m/%d/%Y")
|
16
|
+
@conditions = {:route_short_name => '0',
|
17
|
+
:direction => 'N',
|
18
|
+
:service_type => 'W',
|
19
|
+
:date => @today}
|
20
|
+
end
|
21
|
+
|
22
|
+
it 'only makes one request' do
|
23
|
+
# false just to stop further processing of response
|
24
|
+
Ratis::Request.should_receive(:get).once.and_call_original
|
25
|
+
Ratis::Timetable.where(@conditions.dup)
|
26
|
+
end
|
27
|
+
|
28
|
+
it 'requests the correct SOAP action with correct args' do
|
29
|
+
Ratis::Request.should_receive(:get) do |action, options|
|
30
|
+
action.should eq('Timetable')
|
31
|
+
options["Route"].should eq('0')
|
32
|
+
options["Direction"].should eq('N')
|
33
|
+
options["Date"].should eq(@today)
|
34
|
+
options["Servicetype"].should be_nil
|
35
|
+
|
36
|
+
end.and_return(double('response', :success? => false))
|
37
|
+
|
38
|
+
Ratis::Timetable.where(@conditions.dup)
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'should return a collection Timetable::Stop(s)' do
|
42
|
+
|
43
|
+
timetable = Ratis::Timetable.where(@conditions.dup)
|
44
|
+
timetable.timepoints.each do |obj|
|
45
|
+
expect(obj).to be_a(Ratis::Timetable::Stop)
|
46
|
+
end
|
47
|
+
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'should return a collection Timetable::Stop(s)' do
|
51
|
+
|
52
|
+
timetable = Ratis::Timetable.where(@conditions.dup)
|
53
|
+
timetable.trips.each do |obj|
|
54
|
+
expect(obj).to be_a(Ratis::Timetable::Trip)
|
55
|
+
end
|
56
|
+
puts timetable.trips.size
|
57
|
+
end
|
58
|
+
|
59
|
+
it "should parse the timetable/stop/trip fields" do
|
60
|
+
timetable = Ratis::Timetable.where(@conditions.dup)
|
61
|
+
|
62
|
+
expect(timetable.route_short_name).to eq('0')
|
63
|
+
expect(timetable.direction).to eq('N')
|
64
|
+
expect(timetable.service_type).to eq('Weekday')
|
65
|
+
expect(timetable.operator).to eq('AP')
|
66
|
+
expect(timetable.effective).to eq('05/20/13')
|
67
|
+
|
68
|
+
stop = timetable.timepoints.first
|
69
|
+
|
70
|
+
expect(stop.ratis_stop_id).to eq(0)
|
71
|
+
expect(stop.atis_stop_id).to eq('3317')
|
72
|
+
expect(stop.stop_id).to eq('10050')
|
73
|
+
expect(stop.description).to eq('CENTRAL AVE & DOBBINS RD')
|
74
|
+
expect(stop.area).to eq('Phoenix')
|
75
|
+
|
76
|
+
trip = timetable.trips.first
|
77
|
+
|
78
|
+
expect(trip.ratis_stop_id).to eq(0)
|
79
|
+
expect(trip.times).to eq( ["05:10 AM", "05:14 AM", "05:22 AM", "05:35 AM", "05:43 AM", "05:51 AM", "05:59 AM", "06:10 AM"] )
|
80
|
+
expect(trip.comment).to eq('F')
|
81
|
+
|
82
|
+
end
|
83
|
+
|
84
|
+
it "should raise error for missing arg route_short_name" do
|
85
|
+
conditions = @conditions.dup
|
86
|
+
conditions.delete(:route_short_name)
|
87
|
+
|
88
|
+
expect do
|
89
|
+
Ratis::Timetable.where(conditions)
|
90
|
+
end.to raise_error(ArgumentError, 'You must provide a route_short_name')
|
91
|
+
end
|
92
|
+
|
93
|
+
it "should raise error for missing arg direction" do
|
94
|
+
conditions = @conditions.dup
|
95
|
+
conditions.delete(:direction)
|
96
|
+
|
97
|
+
expect do
|
98
|
+
Ratis::Timetable.where(conditions)
|
99
|
+
end.to raise_error(ArgumentError, 'You must provide a direction')
|
100
|
+
end
|
101
|
+
|
102
|
+
it "should raise error for missing arg date" do
|
103
|
+
conditions = @conditions.dup
|
104
|
+
conditions.delete(:date)
|
105
|
+
conditions.delete(:service_type)
|
106
|
+
|
107
|
+
expect do
|
108
|
+
Ratis::Timetable.where(conditions)
|
109
|
+
end.to raise_error(ArgumentError, 'You must provide either date or service_type')
|
110
|
+
end
|
111
|
+
|
112
|
+
end
|
113
|
+
|
114
|
+
end
|
115
|
+
|
@@ -0,0 +1,72 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe Ratis::Walk do
|
4
|
+
before do
|
5
|
+
Ratis.reset
|
6
|
+
Ratis.configure do |config|
|
7
|
+
config.endpoint = 'http://example.com/soap.cgi'
|
8
|
+
config.namespace = 'TEST_NS'
|
9
|
+
end
|
10
|
+
end
|
11
|
+
|
12
|
+
describe 'walk to the pub' do
|
13
|
+
|
14
|
+
before do
|
15
|
+
stub_atis_request.to_return( atis_response 'Walkstop', '1.2', '0', <<-BODY )
|
16
|
+
<Walkinfo>
|
17
|
+
<Walkdistance>1.2</Walkdistance>
|
18
|
+
<Walkunits>miles</Walkunits>
|
19
|
+
<Walktime>22</Walktime>
|
20
|
+
</Walkinfo>
|
21
|
+
<Starttext>text of the starting point of the walk</Starttext>
|
22
|
+
<Endtext>text of the ending point of the walk</Endtext>
|
23
|
+
<Walk>
|
24
|
+
<Leg>Do some walking</Leg>
|
25
|
+
<Leg>Walk some more</Leg>
|
26
|
+
</Walk>
|
27
|
+
<Walkpoints>
|
28
|
+
<Walkpoint>33.45455, -112.07064</Walkpoint>
|
29
|
+
<Walkpoint>33.45454, -112.071263</Walkpoint>
|
30
|
+
<Walkpoint>33.45453, -112.07256</Walkpoint>
|
31
|
+
<Walkpoint>33.45586, -112.07255</Walkpoint>
|
32
|
+
</Walkpoints>
|
33
|
+
BODY
|
34
|
+
|
35
|
+
@walk = Ratis::Walk.walk_stop :start_latitude => '33.45455', :start_longitude => '-112.07064', :end_latitude => '33.45586', :end_longitude => '-112.07255'
|
36
|
+
end
|
37
|
+
|
38
|
+
describe '#walk_stop' do
|
39
|
+
|
40
|
+
it 'only makes one request' do
|
41
|
+
an_atis_request.should have_been_made.times 1
|
42
|
+
end
|
43
|
+
|
44
|
+
it 'requests the correct SOAP action' do
|
45
|
+
an_atis_request_for('Walkstop',
|
46
|
+
'Startlat' => '33.45455', 'Startlong' => '-112.07064', 'Endlat' => '33.45586', 'Endlong' => '-112.07255'
|
47
|
+
).should have_been_made
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'parses out fields correctly' do
|
51
|
+
@walk.legs.should eql [ { :description => 'Do some walking' }, { :description => 'Walk some more' } ]
|
52
|
+
@walk.walk_distance.should eql '1.2'
|
53
|
+
@walk.walk_units.should eql 'miles'
|
54
|
+
@walk.walk_time.should eql '22'
|
55
|
+
end
|
56
|
+
|
57
|
+
end
|
58
|
+
|
59
|
+
describe '#to_hash' do
|
60
|
+
|
61
|
+
it 'returns only the correct keys' do
|
62
|
+
hash = { :legs => [ { :description => 'Do some walking' }, { :description => 'Walk some more' } ],
|
63
|
+
:walk_distance => '1.2', :walk_units => 'miles', :walk_time => '22' }
|
64
|
+
HashDiff.diff(@walk.to_hash, hash).should eql []
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
70
|
+
|
71
|
+
end
|
72
|
+
|
data/spec/spec_helper.rb
ADDED
@@ -0,0 +1,45 @@
|
|
1
|
+
require 'simplecov'
|
2
|
+
SimpleCov.start
|
3
|
+
|
4
|
+
project_root = File.expand_path(File.dirname(__FILE__) + "/..")
|
5
|
+
$LOAD_PATH << "#{project_root}/lib"
|
6
|
+
|
7
|
+
require 'webmock/rspec'
|
8
|
+
require 'rspec'
|
9
|
+
require 'active_support/core_ext'
|
10
|
+
require 'hashdiff'
|
11
|
+
require 'ratis'
|
12
|
+
require 'vcr'
|
13
|
+
require 'chronic'
|
14
|
+
|
15
|
+
Dir[("#{project_root}/spec/support/**/*.rb")].each { |f| require f }
|
16
|
+
|
17
|
+
RSpec.configure do |config|
|
18
|
+
# config.color_enabled = true
|
19
|
+
config.include RatisHelpers
|
20
|
+
# config.extend VCR::RSpec::Macros
|
21
|
+
config.treat_symbols_as_metadata_keys_with_true_values = true
|
22
|
+
end
|
23
|
+
|
24
|
+
HTTPI.log = false
|
25
|
+
Savon.configure do |config|
|
26
|
+
config.log = false
|
27
|
+
end
|
28
|
+
|
29
|
+
Ratis.configure do |config|
|
30
|
+
config.endpoint = 'http://soap.valleymetro.org/cgi-bin-soap-web-252/soap.cgi'
|
31
|
+
config.namespace = 'PX_WEB'
|
32
|
+
config.timeout = 5
|
33
|
+
end
|
34
|
+
|
35
|
+
VCR.configure do |c|
|
36
|
+
c.hook_into :webmock
|
37
|
+
c.configure_rspec_metadata!
|
38
|
+
c.preserve_exact_body_bytes { true }
|
39
|
+
c.cassette_library_dir = "#{project_root}/spec/support/vcr_cassettes"
|
40
|
+
c.ignore_localhost = true
|
41
|
+
c.allow_http_connections_when_no_cassette = true
|
42
|
+
c.default_cassette_options = {
|
43
|
+
:re_record_interval => 1.month
|
44
|
+
}
|
45
|
+
end
|
@@ -0,0 +1,96 @@
|
|
1
|
+
module RatisHelpers
|
2
|
+
|
3
|
+
def stub_atis_request
|
4
|
+
stub_request :post, 'http://example.com/soap.cgi'
|
5
|
+
end
|
6
|
+
|
7
|
+
def an_atis_request
|
8
|
+
a_request :post, 'http://example.com/soap.cgi'
|
9
|
+
end
|
10
|
+
|
11
|
+
def an_atis_request_for(action, params = {})
|
12
|
+
an_atis_request.with do |request|
|
13
|
+
request.headers['Soapaction'] == %Q{"TEST_NS##{ action }"}
|
14
|
+
|
15
|
+
params_body = { action => params.merge( { 'xmlns' => 'TEST_NS' } ) }
|
16
|
+
request_body = Hash.from_xml(request.body)['Envelope']['Body']
|
17
|
+
HashDiff.diff(params_body, request_body).should eql []
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def atis_response action, version, action_response_code, action_response_body
|
22
|
+
{ :body => <<-BODY }
|
23
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
24
|
+
<SOAP-ENV:Envelope xmlns:xsi="http://www.w3.org/1999/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsd="http://www.w3.org/1999/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
25
|
+
<SOAP-ENV:Body>
|
26
|
+
<namesp1:#{action}Response xmlns:namesp1="TEST_NS">
|
27
|
+
<Responsecode>#{ action_response_code }</Responsecode>
|
28
|
+
<Version>#{ version }</Version>
|
29
|
+
#{ action_response_body }
|
30
|
+
<Copyright>XML schema Copyright (c) 2011 Trapeze Software, Inc., all rights reserved.</Copyright>
|
31
|
+
<Soapversion>2.4.4 - 08/31/11</Soapversion>
|
32
|
+
</namesp1:#{action}Response>
|
33
|
+
</SOAP-ENV:Body>
|
34
|
+
</SOAP-ENV:Envelope>
|
35
|
+
BODY
|
36
|
+
end
|
37
|
+
|
38
|
+
def atis_error_response fault_code, fault_string
|
39
|
+
{ :body => <<-BODY }
|
40
|
+
<?xml version="1.0" encoding="UTF-8"?>
|
41
|
+
<SOAP-ENV:Envelope xmlns:namesp1="http://namespaces.soaplite.com/perl" xmlns:SOAP-ENV="http://schemas.xmlsoap.org/soap/envelope/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:SOAP-ENC="http://schemas.xmlsoap.org/soap/encoding/" xmlns:xsd="http://www.w3.org/2001/XMLSchema" SOAP-ENV:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
42
|
+
<SOAP-ENV:Body>
|
43
|
+
<SOAP-ENV:Fault>
|
44
|
+
<faultcode xsi:type="xsd:string">SOAP-ENV:#{ fault_code }</faultcode>
|
45
|
+
<faultstring xsi:type="xsd:string">#{ fault_string }</faultstring>
|
46
|
+
<detail>
|
47
|
+
<TEST_NS xsi:type="namesp1:TEST_NS">
|
48
|
+
<code xsi:type="xsd:int">#{ fault_code }</code>
|
49
|
+
</TEST_NS>
|
50
|
+
</detail>
|
51
|
+
</SOAP-ENV:Fault>
|
52
|
+
</SOAP-ENV:Body>
|
53
|
+
</SOAP-ENV:Envelope>
|
54
|
+
BODY
|
55
|
+
end
|
56
|
+
|
57
|
+
def atis_response_timetable params = {}
|
58
|
+
<<-BODY
|
59
|
+
<Headway>
|
60
|
+
<Route>#{params[:route] || '0' }</Route>
|
61
|
+
<Direction>#{ params[:direct] || 'N' }</Direction>
|
62
|
+
<Servicetype>#{ params[:service_type] || 'W' }</Servicetype>
|
63
|
+
<Signage>0 North to Road St.</Signage>
|
64
|
+
<Operator>#{ params[:operator] || 'OP' }</Operator>
|
65
|
+
<Effective>#{ params[:effective] || '01/15/2012' }</Effective>
|
66
|
+
<Timepoints>
|
67
|
+
<Stop>
|
68
|
+
<Atisstopid>1337</Atisstopid>
|
69
|
+
<Stopid>80085</Stopid>
|
70
|
+
<Description>ALPHA ST & BETA RD</Description>
|
71
|
+
<Area>Townsville</Area>
|
72
|
+
</Stop>
|
73
|
+
</Timepoints>
|
74
|
+
<Times>
|
75
|
+
<Trip>
|
76
|
+
<Tripid>001-001</Tripid>
|
77
|
+
<Block>999</Block>
|
78
|
+
<Comment>My trip comment</Comment>
|
79
|
+
<Time>12:34 AM</Time>
|
80
|
+
<Calendarstartdate>#{ Time.now.strftime '%m/%d/%y' }</Calendarstartdate>
|
81
|
+
<Calendar>#{ 120.times.map{['y','n'].sample} }</Calendar>
|
82
|
+
<Commentcode>comment_code_trip</Commentcode>
|
83
|
+
</Trip>
|
84
|
+
</Times>
|
85
|
+
</Headway>
|
86
|
+
<Comments>
|
87
|
+
<Comment>
|
88
|
+
<Code>comment_code_request</Code>
|
89
|
+
<Text>My request comment</Text>
|
90
|
+
</Comment>
|
91
|
+
</Comments>
|
92
|
+
BODY
|
93
|
+
end
|
94
|
+
|
95
|
+
end
|
96
|
+
|
@@ -0,0 +1,200 @@
|
|
1
|
+
---
|
2
|
+
http_interactions:
|
3
|
+
- request:
|
4
|
+
method: post
|
5
|
+
uri: http://example.com/soap.cgi
|
6
|
+
body:
|
7
|
+
base64_string: |
|
8
|
+
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48ZW52OkVu
|
9
|
+
dmVsb3BlIHhtbG5zOndzZGw9IlRFU1RfTlMiIHhtbG5zOnhzZD0iaHR0cDov
|
10
|
+
L3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEiIHhtbG5zOnhzaT0iaHR0cDov
|
11
|
+
L3d3dy53My5vcmcvMjAwMS9YTUxTY2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVu
|
12
|
+
dj0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9wZS8i
|
13
|
+
PjxlbnY6Qm9keT48UG9pbnQycG9pbnQgeG1sbnM9IlBYX1dFQiI+PERlc3Rp
|
14
|
+
bmF0aW9ubGF0PjMzLjQ0NzA5ODwvRGVzdGluYXRpb25sYXQ+PFJvdXRlc29u
|
15
|
+
bHk+WTwvUm91dGVzb25seT48U3RhcnR0aW1lPjE3MDA8L1N0YXJ0dGltZT48
|
16
|
+
RW5kdGltZT4xODAwPC9FbmR0aW1lPjxPcmlnaW5sb25nPi0xMTIuMDk3OTAz
|
17
|
+
PC9PcmlnaW5sb25nPjxPcmlnaW5sYXQ+MzMuNDQ2OTMxPC9PcmlnaW5sYXQ+
|
18
|
+
PERlc3RpbmF0aW9ubG9uZz4tMTEyLjA3NzIxMzwvRGVzdGluYXRpb25sb25n
|
19
|
+
PjxEYXRlPjA0LzExLzIwMTM8L0RhdGU+PFJvdXRlcz48L1JvdXRlcz48L1Bv
|
20
|
+
aW50MnBvaW50PjwvZW52OkJvZHk+PC9lbnY6RW52ZWxvcGU+
|
21
|
+
|
22
|
+
headers:
|
23
|
+
Accept:
|
24
|
+
- "*/*"
|
25
|
+
Soapaction:
|
26
|
+
- "\"PX_WEB#Point2point\""
|
27
|
+
Content-Length:
|
28
|
+
- "576"
|
29
|
+
Content-Type:
|
30
|
+
- text/xml;charset=UTF-8
|
31
|
+
response:
|
32
|
+
status:
|
33
|
+
code: 302
|
34
|
+
message: Found
|
35
|
+
headers:
|
36
|
+
Connection:
|
37
|
+
- Keep-Alive
|
38
|
+
Server:
|
39
|
+
- BigIP
|
40
|
+
Location:
|
41
|
+
- http://www.iana.org/domains/example/
|
42
|
+
Content-Length:
|
43
|
+
- "0"
|
44
|
+
body:
|
45
|
+
base64_string: ""
|
46
|
+
http_version:
|
47
|
+
recorded_at: Fri, 12 Apr 2013 01:39:08 GMT
|
48
|
+
- request:
|
49
|
+
method: post
|
50
|
+
uri: http://soap.valleymetro.org/cgi-bin-soap-web-252/soap.cgi
|
51
|
+
body:
|
52
|
+
base64_string: |
|
53
|
+
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48ZW52OkVu
|
54
|
+
dmVsb3BlIHhtbG5zOnhzZD0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxT
|
55
|
+
Y2hlbWEiIHhtbG5zOnhzaT0iaHR0cDovL3d3dy53My5vcmcvMjAwMS9YTUxT
|
56
|
+
Y2hlbWEtaW5zdGFuY2UiIHhtbG5zOmVudj0iaHR0cDovL3NjaGVtYXMueG1s
|
57
|
+
c29hcC5vcmcvc29hcC9lbnZlbG9wZS8iIHhtbG5zOndzZGw9IlBYX1dFQiI+
|
58
|
+
PGVudjpCb2R5PjxQb2ludDJwb2ludCB4bWxucz0iUFhfV0VCIj48T3JpZ2lu
|
59
|
+
bG9uZz4tMTEyLjA5NzkwMzwvT3JpZ2lubG9uZz48Um91dGVzPjE8L1JvdXRl
|
60
|
+
cz48Um91dGVzb25seT5ZPC9Sb3V0ZXNvbmx5PjxEYXRlPjA2LzA2LzIwMTM8
|
61
|
+
L0RhdGU+PERlc3RpbmF0aW9ubGF0PjMzLjQ0NzA5ODwvRGVzdGluYXRpb25s
|
62
|
+
YXQ+PE9yaWdpbmxhdD4zMy40NDY5MzE8L09yaWdpbmxhdD48U3RhcnR0aW1l
|
63
|
+
PjE3MDA8L1N0YXJ0dGltZT48RW5kdGltZT4xODAwPC9FbmR0aW1lPjxEZXN0
|
64
|
+
aW5hdGlvbmxvbmc+LTExMi4wNzcyMTM8L0Rlc3RpbmF0aW9ubG9uZz48L1Bv
|
65
|
+
aW50MnBvaW50PjwvZW52OkJvZHk+PC9lbnY6RW52ZWxvcGU+
|
66
|
+
|
67
|
+
headers:
|
68
|
+
Accept:
|
69
|
+
- "*/*"
|
70
|
+
Soapaction:
|
71
|
+
- "\"PX_WEB#Point2point\""
|
72
|
+
Content-Length:
|
73
|
+
- "576"
|
74
|
+
Content-Type:
|
75
|
+
- text/xml;charset=UTF-8
|
76
|
+
response:
|
77
|
+
status:
|
78
|
+
code: 200
|
79
|
+
message: OK
|
80
|
+
headers:
|
81
|
+
Connection:
|
82
|
+
- close
|
83
|
+
Server:
|
84
|
+
- Apache/2.2.3 (CentOS)
|
85
|
+
Date:
|
86
|
+
- Thu, 06 Jun 2013 19:05:58 GMT
|
87
|
+
Soapserver:
|
88
|
+
- SOAP::Lite/Perl/0.55
|
89
|
+
Content-Length:
|
90
|
+
- "4558"
|
91
|
+
Content-Type:
|
92
|
+
- text/xml; charset=utf-8
|
93
|
+
body:
|
94
|
+
base64_string: |
|
95
|
+
PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0iVVRGLTgiPz48U09BUC1F
|
96
|
+
TlY6RW52ZWxvcGUgeG1sbnM6eHNpPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5
|
97
|
+
L1hNTFNjaGVtYS1pbnN0YW5jZSIgeG1sbnM6U09BUC1FTkM9Imh0dHA6Ly9z
|
98
|
+
Y2hlbWFzLnhtbHNvYXAub3JnL3NvYXAvZW5jb2RpbmcvIiB4bWxuczpTT0FQ
|
99
|
+
LUVOVj0iaHR0cDovL3NjaGVtYXMueG1sc29hcC5vcmcvc29hcC9lbnZlbG9w
|
100
|
+
ZS8iIHhtbG5zOnhzZD0iaHR0cDovL3d3dy53My5vcmcvMTk5OS9YTUxTY2hl
|
101
|
+
bWEiIFNPQVAtRU5WOmVuY29kaW5nU3R5bGU9Imh0dHA6Ly9zY2hlbWFzLnht
|
102
|
+
bHNvYXAub3JnL3NvYXAvZW5jb2RpbmcvIj48U09BUC1FTlY6Qm9keT48bmFt
|
103
|
+
ZXNwMTpQb2ludDJwb2ludFJlc3BvbnNlIHhtbG5zOm5hbWVzcDE9IlBYX1dF
|
104
|
+
QiI+Cgk8UmVzcG9uc2Vjb2RlPjA8L1Jlc3BvbnNlY29kZT4KCTxWZXJzaW9u
|
105
|
+
PjEuNTwvVmVyc2lvbj4KCTxSb3V0ZXM+CgkJPFNlcnZpY2U+CgkJCTxSb3V0
|
106
|
+
ZT41NjI8L1JvdXRlPgoJCQk8RGlyZWN0aW9uPk88L0RpcmVjdGlvbj4KCQkJ
|
107
|
+
PFNlcnZpY2V0eXBlPlc8L1NlcnZpY2V0eXBlPgoJCQk8U2lnbmFnZT41NjIg
|
108
|
+
R29vZHllYXIgVG8gR29vZHllYXI8L1NpZ25hZ2U+CgkJCTxSb3V0ZXR5cGU+
|
109
|
+
WDwvUm91dGV0eXBlPgoJCTwvU2VydmljZT4KCQk8U2VydmljZT4KCQkJPFJv
|
110
|
+
dXRlPjQ1MDwvUm91dGU+CgkJCTxEaXJlY3Rpb24+RTwvRGlyZWN0aW9uPgoJ
|
111
|
+
CQk8U2VydmljZXR5cGU+VzwvU2VydmljZXR5cGU+CgkJCTxTaWduYWdlPkkt
|
112
|
+
MTAgRUFTVCBSQVBJRCBUbyA0MCBTdC9QZWNvczwvU2lnbmFnZT4KCQkJPFJv
|
113
|
+
dXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNl
|
114
|
+
PgoJCQk8Um91dGU+NTcxPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5PPC9EaXJl
|
115
|
+
Y3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNp
|
116
|
+
Z25hZ2U+NTcxIFN1cnByaXNlIFRvIFN1cnByaXNlIFBOUjwvU2lnbmFnZT4K
|
117
|
+
CQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxT
|
118
|
+
ZXJ2aWNlPgoJCQk8Um91dGU+NDYwPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5X
|
119
|
+
PC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4K
|
120
|
+
CQkJPFNpZ25hZ2U+SS0xMCBXRVNUIFJBUElEIHRvIERlc2VydCBTa3kgTWFs
|
121
|
+
bCBWaWEgNzlBdmUvSS0xMDwvU2lnbmFnZT4KCQkJPFJvdXRldHlwZT5YPC9S
|
122
|
+
b3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+
|
123
|
+
NTQxPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5PPC9EaXJlY3Rpb24+CgkJCTxT
|
124
|
+
ZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+NTQxIENo
|
125
|
+
YW5kbGVyIFRvIEFyaXpvbmEvUmF5IFZpYSBXZXN0IE1lc2EgUE5SPC9TaWdu
|
126
|
+
YWdlPgoJCQk8Um91dGV0eXBlPlg8L1JvdXRldHlwZT4KCQk8L1NlcnZpY2U+
|
127
|
+
CgkJPFNlcnZpY2U+CgkJCTxSb3V0ZT41MzM8L1JvdXRlPgoJCQk8RGlyZWN0
|
128
|
+
aW9uPk88L0RpcmVjdGlvbj4KCQkJPFNlcnZpY2V0eXBlPlc8L1NlcnZpY2V0
|
129
|
+
eXBlPgoJCQk8U2lnbmFnZT41MzMgTWVzYSBUbyBTdXByc3RuIFNwcmcgUE5S
|
130
|
+
PC9TaWduYWdlPgoJCQk8Um91dGV0eXBlPlg8L1JvdXRldHlwZT4KCQk8L1Nl
|
131
|
+
cnZpY2U+CgkJPFNlcnZpY2U+CgkJCTxSb3V0ZT41MjI8L1JvdXRlPgoJCQk8
|
132
|
+
RGlyZWN0aW9uPk88L0RpcmVjdGlvbj4KCQkJPFNlcnZpY2V0eXBlPlc8L1Nl
|
133
|
+
cnZpY2V0eXBlPgoJCQk8U2lnbmFnZT41MjIgVGVtcGUgVG8gV2FybmVyL0ND
|
134
|
+
IFdheTwvU2lnbmFnZT4KCQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJ
|
135
|
+
PC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+NTIxPC9Sb3V0ZT4K
|
136
|
+
CQkJPERpcmVjdGlvbj5PPC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5X
|
137
|
+
PC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+NTIxIFRlbXBlIFRvIFByaWNl
|
138
|
+
L0Jhc2VsaW5lPC9TaWduYWdlPgoJCQk8Um91dGV0eXBlPlg8L1JvdXRldHlw
|
139
|
+
ZT4KCQk8L1NlcnZpY2U+CgkJPFNlcnZpY2U+CgkJCTxSb3V0ZT41MjA8L1Jv
|
140
|
+
dXRlPgoJCQk8RGlyZWN0aW9uPk88L0RpcmVjdGlvbj4KCQkJPFNlcnZpY2V0
|
141
|
+
eXBlPlc8L1NlcnZpY2V0eXBlPgoJCQk8U2lnbmFnZT41MjAgVGVtcGUgVG8g
|
142
|
+
UHJpY2UvQmR3eTwvU2lnbmFnZT4KCQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5
|
143
|
+
cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+NTE0PC9S
|
144
|
+
b3V0ZT4KCQkJPERpcmVjdGlvbj5PPC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNl
|
145
|
+
dHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+NTE0IFNjb3R0c2Rh
|
146
|
+
bGUgVG8gRm91bnRuIEhpbGxzPC9TaWduYWdlPgoJCQk8Um91dGV0eXBlPlg8
|
147
|
+
L1JvdXRldHlwZT4KCQk8L1NlcnZpY2U+CgkJPFNlcnZpY2U+CgkJCTxSb3V0
|
148
|
+
ZT5EQVNHPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5LPC9EaXJlY3Rpb24+CgkJ
|
149
|
+
CTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+REFT
|
150
|
+
SCBHdnJubW50IFRvIFN0YXRlIENhcGl0bDwvU2lnbmFnZT4KCQkJPFJvdXRl
|
151
|
+
dHlwZT5CPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJ
|
152
|
+
CQk8Um91dGU+NTQyPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5PPC9EaXJlY3Rp
|
153
|
+
b24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25h
|
154
|
+
Z2U+NTQyIENoYW5kbGVyIFRvIENoYW5kbGVyIFBOUjwvU2lnbmFnZT4KCQkJ
|
155
|
+
PFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2
|
156
|
+
aWNlPgoJCQk8Um91dGU+NTM1PC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5PPC9E
|
157
|
+
aXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJ
|
158
|
+
PFNpZ25hZ2U+NTM1IE1lc2EgVG8gUG93ZXIgUmQgUE5SIFZpYSBHaWxiL01j
|
159
|
+
RHdsIFBOUjwvU2lnbmFnZT4KCQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+
|
160
|
+
CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+NTMxPC9Sb3V0
|
161
|
+
ZT4KCQkJPERpcmVjdGlvbj5PPC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlw
|
162
|
+
ZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+NTMxIE1lc2EvR2lsYnJ0
|
163
|
+
IFRvIERudG4gR2lsYmVydCBWaWEgV2VzdCBNZXNhIFBOUjwvU2lnbmFnZT4K
|
164
|
+
CQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxT
|
165
|
+
ZXJ2aWNlPgoJCQk8Um91dGU+NTYzPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5P
|
166
|
+
PC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4K
|
167
|
+
CQkJPFNpZ25hZ2U+NTYzIEJ1Y2tleWUgVG8gQnVja2V5ZSBQJmFtcDtSIFZp
|
168
|
+
YSBHb29keWVhciBQJmFtcDtSPC9TaWduYWdlPgoJCQk8Um91dGV0eXBlPlg8
|
169
|
+
L1JvdXRldHlwZT4KCQk8L1NlcnZpY2U+CgkJPFNlcnZpY2U+CgkJCTxSb3V0
|
170
|
+
ZT4zPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5FPC9EaXJlY3Rpb24+CgkJCTxT
|
171
|
+
ZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+MyBWQU4g
|
172
|
+
QlVSRU4gRWFzdCB0byA0OHRoIFN0LjwvU2lnbmFnZT4KCQkJPFJvdXRldHlw
|
173
|
+
ZT5CPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8
|
174
|
+
Um91dGU+NDAwPC9Sb3V0ZT4KCQkJPERpcmVjdGlvbj5OPC9EaXJlY3Rpb24+
|
175
|
+
CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNldHlwZT4KCQkJPFNpZ25hZ2U+
|
176
|
+
U1ItNTEgUkFQSUQgVG8gQmVsbC9TUi01MSBWaWEgU2hlYS9TUi01MTwvU2ln
|
177
|
+
bmFnZT4KCQkJPFJvdXRldHlwZT5YPC9Sb3V0ZXR5cGU+CgkJPC9TZXJ2aWNl
|
178
|
+
PgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+NTczPC9Sb3V0ZT4KCQkJPERpcmVj
|
179
|
+
dGlvbj5PPC9EaXJlY3Rpb24+CgkJCTxTZXJ2aWNldHlwZT5XPC9TZXJ2aWNl
|
180
|
+
dHlwZT4KCQkJPFNpZ25hZ2U+NTczIE4gR2xlbmRhbGUgNzUvQmVhcmRzbGV5
|
181
|
+
IFZpYSBJLTEwPC9TaWduYWdlPgoJCQk8Um91dGV0eXBlPlg8L1JvdXRldHlw
|
182
|
+
ZT4KCQk8L1NlcnZpY2U+CgkJPFNlcnZpY2U+CgkJCTxSb3V0ZT40NTE8L1Jv
|
183
|
+
dXRlPgoJCQk8RGlyZWN0aW9uPlM8L0RpcmVjdGlvbj4KCQkJPFNlcnZpY2V0
|
184
|
+
eXBlPlc8L1NlcnZpY2V0eXBlPgoJCQk8U2lnbmFnZT5DU00gUkFQSUQgVG8g
|
185
|
+
Mjd0aCBBdi9Cc2xuIFBOUjwvU2lnbmFnZT4KCQkJPFJvdXRldHlwZT5YPC9S
|
186
|
+
b3V0ZXR5cGU+CgkJPC9TZXJ2aWNlPgoJCTxTZXJ2aWNlPgoJCQk8Um91dGU+
|
187
|
+
MTwvUm91dGU+CgkJCTxEaXJlY3Rpb24+RTwvRGlyZWN0aW9uPgoJCQk8U2Vy
|
188
|
+
dmljZXR5cGU+VzwvU2VydmljZXR5cGU+CgkJCTxTaWduYWdlPjEgV0FTSElO
|
189
|
+
R1RPTiBFYXN0IFRvIFBob2VuaXggWm9vPC9TaWduYWdlPgoJCQk8Um91dGV0
|
190
|
+
eXBlPkI8L1JvdXRldHlwZT4KCQk8L1NlcnZpY2U+Cgk8L1JvdXRlcz4KCTxI
|
191
|
+
b3N0PnMtcnB0YS1zb2FwPC9Ib3N0PgoJPENvcHlyaWdodD5YTUwgc2NoZW1h
|
192
|
+
IENvcHlyaWdodCAoYykgMjAwMy0yMDEyIFRyYXBlemUgU29mdHdhcmUsIElu
|
193
|
+
Yy4sIGFsbCByaWdodHMgcmVzZXJ2ZWQuPC9Db3B5cmlnaHQ+Cgk8U29hcHZl
|
194
|
+
cnNpb24+Mi41LjIgLSAwNi8wNy8xMjwvU29hcHZlcnNpb24+CjwvbmFtZXNw
|
195
|
+
MTpQb2ludDJwb2ludFJlc3BvbnNlPjwvU09BUC1FTlY6Qm9keT48L1NPQVAt
|
196
|
+
RU5WOkVudmVsb3BlPg==
|
197
|
+
|
198
|
+
http_version:
|
199
|
+
recorded_at: Thu, 06 Jun 2013 19:05:58 GMT
|
200
|
+
recorded_with: VCR 2.4.0
|