exact4r 0.8 → 0.9
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG +3 -0
- data/VERSION +1 -1
- data/after.log +1 -1
- data/before.log +17 -0
- data/doc/classes/EWS/Transporter.html +1 -1
- data/doc/created.rid +1 -1
- data/doc/files/CHANGELOG.html +6 -2
- data/doc/files/VERSION.html +2 -2
- data/doc/files/lib/ews/transporter_rb.html +1 -1
- data/lib/ews/transaction/mapping.rb +9 -8
- data/lib/ews/transporter.rb +1 -1
- data/qa.log +14 -0
- data/spec/request_spec.rb +4 -0
- data/spec/spec_helper.rb +4 -4
- data/spec/transporter_spec.rb +4 -4
- metadata +4 -2
data/CHANGELOG
CHANGED
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.
|
1
|
+
0.9
|
data/after.log
CHANGED
data/before.log
ADDED
@@ -0,0 +1,17 @@
|
|
1
|
+
(in /Volumes/Exact/WebService/exact4r)
|
2
|
+
..............[].[].[].[]F....F....
|
3
|
+
|
4
|
+
1)
|
5
|
+
'Submitting Find Requests should support SOAP' FAILED
|
6
|
+
expected: "00",
|
7
|
+
got: nil (using ==)
|
8
|
+
./spec/request_spec.rb:138:
|
9
|
+
|
10
|
+
2)
|
11
|
+
'Transporter creating transactions should throw an exception when parsing a response to sending nonsense SOAP' FAILED
|
12
|
+
expected Exception but nothing was raised
|
13
|
+
./spec/transporter_spec.rb:38:
|
14
|
+
|
15
|
+
Finished in 82.424866 seconds
|
16
|
+
|
17
|
+
27 examples, 2 failures
|
@@ -224,7 +224,7 @@ transport type will be used
|
|
224
224
|
52: <span class="ruby-identifier">request</span> = <span class="ruby-identifier">build_http_request</span>(<span class="ruby-identifier">transaction</span>, <span class="ruby-identifier">transport_type</span>, <span class="ruby-identifier">transport_details</span>[<span class="ruby-identifier">:suffix</span>])
|
225
225
|
53: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">basic_auth</span>(<span class="ruby-identifier">transaction</span>.<span class="ruby-identifier">gateway_id</span>, <span class="ruby-identifier">transaction</span>.<span class="ruby-identifier">password</span>)
|
226
226
|
54: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">add_field</span> <span class="ruby-value str">"Accept"</span>, <span class="ruby-identifier">transport_details</span>[<span class="ruby-identifier">:content_type</span>]
|
227
|
-
55: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">add_field</span> <span class="ruby-value str">"User-Agent"</span>, <span class="ruby-value str">"
|
227
|
+
55: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">add_field</span> <span class="ruby-value str">"User-Agent"</span>, <span class="ruby-value str">"exact4r v0.7"</span>
|
228
228
|
56: <span class="ruby-identifier">request</span>.<span class="ruby-identifier">add_field</span> <span class="ruby-value str">"Content-type"</span>, <span class="ruby-node">"#{transport_details[:content_type]}; charset=UTF-8"</span>
|
229
229
|
57:
|
230
230
|
58: <span class="ruby-identifier">response</span> = <span class="ruby-identifier">get_connection</span>.<span class="ruby-identifier">request</span>(<span class="ruby-identifier">request</span>)
|
data/doc/created.rid
CHANGED
@@ -1 +1 @@
|
|
1
|
-
|
1
|
+
Wed, 10 Jun 2009 12:23:07 +1000
|
data/doc/files/CHANGELOG.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Wed Jun 10 12:21:52 +1000 2009</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -69,7 +69,11 @@
|
|
69
69
|
<div id="contextContent">
|
70
70
|
|
71
71
|
<div id="description">
|
72
|
-
<h2>v0.
|
72
|
+
<h2>v0.8</h2>
|
73
|
+
<pre>
|
74
|
+
Added User-Agent string to HTTP requests
|
75
|
+
</pre>
|
76
|
+
<h2>v0.7</h2>
|
73
77
|
<pre>
|
74
78
|
Updated with latest certificates for api.e-xact.com
|
75
79
|
Fixed SOAP namespace issue
|
data/doc/files/VERSION.html
CHANGED
@@ -56,7 +56,7 @@
|
|
56
56
|
</tr>
|
57
57
|
<tr class="top-aligned-row">
|
58
58
|
<td><strong>Last Update:</strong></td>
|
59
|
-
<td>
|
59
|
+
<td>Wed Jun 10 12:21:24 +1000 2009</td>
|
60
60
|
</tr>
|
61
61
|
</table>
|
62
62
|
</div>
|
@@ -70,7 +70,7 @@
|
|
70
70
|
|
71
71
|
<div id="description">
|
72
72
|
<p>
|
73
|
-
0.
|
73
|
+
0.8
|
74
74
|
</p>
|
75
75
|
|
76
76
|
</div>
|
@@ -158,19 +158,20 @@ module EWS # :nodoc:
|
|
158
158
|
root.elements.to_a.each do |node|
|
159
159
|
gwlib_prop_name = XML_RESPONSE_TAGS_TO_ATTRS[node.name.to_sym]
|
160
160
|
unless gwlib_prop_name.nil?
|
161
|
-
|
162
|
-
|
161
|
+
value = case gwlib_prop_name
|
162
|
+
when :transaction_approved, :transaction_error
|
163
|
+
(node.text == "true") ? 1 : 0
|
164
|
+
when :transaction_tag
|
165
|
+
node.text.to_i
|
166
|
+
else
|
167
|
+
node.text
|
168
|
+
end
|
169
|
+
|
163
170
|
response.send "#{gwlib_prop_name}=", value
|
164
171
|
end
|
165
172
|
end
|
166
173
|
end
|
167
174
|
|
168
|
-
# type-conversion from strings for certain attributes
|
169
|
-
ATTR_FORMATS = {
|
170
|
-
:transaction_tag => "i",
|
171
|
-
:transaction_approved => "i"
|
172
|
-
}
|
173
|
-
|
174
175
|
REQUEST_ENVELOPE_NAMESPACES = {
|
175
176
|
"xmlns:xsd" => "http://www.w3.org/2001/XMLSchema",
|
176
177
|
"xmlns:soap" => "http://schemas.xmlsoap.org/soap/envelope/",
|
data/lib/ews/transporter.rb
CHANGED
@@ -52,7 +52,7 @@ module EWS # :nodoc:
|
|
52
52
|
request = build_http_request(transaction, transport_type, transport_details[:suffix])
|
53
53
|
request.basic_auth(transaction.gateway_id, transaction.password)
|
54
54
|
request.add_field "Accept", transport_details[:content_type]
|
55
|
-
request.add_field "User-Agent", "exact4r v0.
|
55
|
+
request.add_field "User-Agent", "exact4r v0.9"
|
56
56
|
request.add_field "Content-type", "#{transport_details[:content_type]}; charset=UTF-8"
|
57
57
|
|
58
58
|
response = get_connection.request(request)
|
data/qa.log
ADDED
@@ -0,0 +1,14 @@
|
|
1
|
+
(in /Volumes/Exact/WebService/exact4r)
|
2
|
+
..............[].[].[].[]F.........
|
3
|
+
|
4
|
+
1)
|
5
|
+
RuntimeError in 'Submitting Find Requests should support SOAP'
|
6
|
+
Malformed XML Request.
|
7
|
+
./spec/../lib/ews/transaction/mapping.rb:133:in `soap_to_response'
|
8
|
+
./spec/../lib/ews/transporter.rb:66:in `send'
|
9
|
+
./spec/../lib/ews/transporter.rb:66:in `submit'
|
10
|
+
./spec/request_spec.rb:135:
|
11
|
+
|
12
|
+
Finished in 102.726155 seconds
|
13
|
+
|
14
|
+
27 examples, 1 failure
|
data/spec/request_spec.rb
CHANGED
@@ -50,6 +50,7 @@ describe "Submitting New Requests" do
|
|
50
50
|
|
51
51
|
resp.exact_resp_code.should == "00"
|
52
52
|
resp.exact_message.should == "Transaction Normal"
|
53
|
+
resp.transaction_approved.should == 1
|
53
54
|
resp.bank_message.downcase.should match(/approved/)
|
54
55
|
resp.transaction_tag.should_not be_nil
|
55
56
|
end
|
@@ -60,6 +61,7 @@ describe "Submitting New Requests" do
|
|
60
61
|
|
61
62
|
resp.exact_resp_code.should == "00"
|
62
63
|
resp.exact_message.should == "Transaction Normal"
|
64
|
+
resp.transaction_approved.should == 1
|
63
65
|
resp.bank_message.downcase.should match(/approved/)
|
64
66
|
resp.transaction_tag.should_not be_nil
|
65
67
|
end
|
@@ -70,6 +72,7 @@ describe "Submitting New Requests" do
|
|
70
72
|
|
71
73
|
resp.exact_resp_code.should == "00"
|
72
74
|
resp.exact_message.should == "Transaction Normal"
|
75
|
+
resp.transaction_approved.should == 1
|
73
76
|
resp.bank_message.downcase.should match(/approved/)
|
74
77
|
resp.transaction_tag.should_not be_nil
|
75
78
|
end
|
@@ -80,6 +83,7 @@ describe "Submitting New Requests" do
|
|
80
83
|
|
81
84
|
resp.exact_resp_code.should == "00"
|
82
85
|
resp.exact_message.should == "Transaction Normal"
|
86
|
+
resp.transaction_approved.should == 1
|
83
87
|
resp.bank_message.downcase.should match(/approved/)
|
84
88
|
resp.transaction_tag.should_not be_nil
|
85
89
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -7,13 +7,13 @@ require 'ruby-debug'
|
|
7
7
|
REPLICATION_TIME = 20
|
8
8
|
|
9
9
|
# address & authentication for testing against api.e-xact.com
|
10
|
-
LOCATION = "https://api.e-xact.com/"
|
11
|
-
BASIC_AUTH = {:gateway_id => "A00049-01", :password => "test1"}
|
10
|
+
# LOCATION = "https://api.e-xact.com/"
|
11
|
+
# BASIC_AUTH = {:gateway_id => "A00049-01", :password => "test1"}
|
12
12
|
|
13
13
|
# address & authentication for local testing
|
14
|
-
|
14
|
+
LOCATION = "http://ws.local/" # I am a Passenger...
|
15
15
|
# LOCATION = "http://localhost:3000/" # old skool
|
16
|
-
|
16
|
+
BASIC_AUTH = {:gateway_id => "AD0008-01", :password => "7nfcpc7n"}
|
17
17
|
|
18
18
|
Spec::Runner.configure do |config|
|
19
19
|
include EWS::Transaction
|
data/spec/transporter_spec.rb
CHANGED
@@ -30,14 +30,14 @@ describe "Transporter creating transactions" do
|
|
30
30
|
resp.error_description.should == "Not Found"
|
31
31
|
end
|
32
32
|
|
33
|
-
it "should
|
33
|
+
it "should correctly decode error when sending nonsense SOAP" do
|
34
34
|
req = basic_find_transaction
|
35
35
|
|
36
36
|
EWS::Transaction::Mapping.stubs(:request_to_soap).returns("Complete and utter rubbish. It's not even XML!!")
|
37
37
|
tr = ::EWS::Transporter.new(LOCATION)
|
38
|
-
|
39
|
-
|
40
|
-
|
38
|
+
r = tr.submit(req, :soap)
|
39
|
+
r.error_number.should == 401
|
40
|
+
r.error_description.should == "Malformed XML Request."
|
41
41
|
end
|
42
42
|
|
43
43
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: exact4r
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: "0.
|
4
|
+
version: "0.9"
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- E-xact Transactions Ltd.
|
@@ -9,7 +9,7 @@ autorequire:
|
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
11
|
|
12
|
-
date: 2009-
|
12
|
+
date: 2009-07-08 00:00:00 +10:00
|
13
13
|
default_executable:
|
14
14
|
dependencies:
|
15
15
|
- !ruby/object:Gem::Dependency
|
@@ -45,6 +45,7 @@ extra_rdoc_files:
|
|
45
45
|
- VERSION
|
46
46
|
files:
|
47
47
|
- ./after.log
|
48
|
+
- ./before.log
|
48
49
|
- ./certs
|
49
50
|
- ./certs/equifax_ca.cer
|
50
51
|
- ./certs/exact.cer
|
@@ -90,6 +91,7 @@ files:
|
|
90
91
|
- ./lib/ews/transporter.rb
|
91
92
|
- ./lib/exact4r.rb
|
92
93
|
- ./LICENCE
|
94
|
+
- ./qa.log
|
93
95
|
- ./Rakefile
|
94
96
|
- ./README
|
95
97
|
- ./spec
|