google4r-checkout 1.1.4 → 1.1.5
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/CHANGES +4 -0
- data/lib/google4r/checkout/notifications.rb +4 -1
- data/test/unit/notification_handler_test.rb +11 -0
- metadata +3 -2
data/CHANGES
CHANGED
@@ -101,6 +101,9 @@ module Google4R #:nodoc:
|
|
101
101
|
# # ...
|
102
102
|
# end
|
103
103
|
class NotificationHandler
|
104
|
+
class NonXmlNotification
|
105
|
+
end
|
106
|
+
|
104
107
|
# The Frontend object that created this NotificationHandler
|
105
108
|
attr_accessor :frontend
|
106
109
|
|
@@ -117,7 +120,7 @@ module Google4R #:nodoc:
|
|
117
120
|
# TODO: Add parsing of other notifications here (merchant calculation and the like) when they have been implemented.
|
118
121
|
#++
|
119
122
|
def handle(xml_str)
|
120
|
-
root = REXML::Document.new(xml_str).root
|
123
|
+
root = REXML::Document.new(xml_str).root || NonXmlNotification
|
121
124
|
|
122
125
|
case root.name
|
123
126
|
when 'new-order-notification' then
|
@@ -83,6 +83,11 @@ class Google4R::Checkout::NotificationHandlerTest < Test::Unit::TestCase
|
|
83
83
|
[
|
84
84
|
'<unknown-notification />'
|
85
85
|
]
|
86
|
+
|
87
|
+
@non_xmls =
|
88
|
+
[
|
89
|
+
'some-key-value=pair'
|
90
|
+
]
|
86
91
|
end
|
87
92
|
|
88
93
|
def test_handler_gets_initialized_correctly
|
@@ -110,4 +115,10 @@ class Google4R::Checkout::NotificationHandlerTest < Test::Unit::TestCase
|
|
110
115
|
assert_raises(UnknownNotificationType) { @notification_handler.handle(xml_str) }
|
111
116
|
end
|
112
117
|
end
|
118
|
+
|
119
|
+
def test_raises_exception_on_non_xml_notifications
|
120
|
+
@non_xmls.each do |str|
|
121
|
+
assert_raises(UnknownNotificationType) { @notification_handler.handle(str) }
|
122
|
+
end
|
123
|
+
end
|
113
124
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: google4r-checkout
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.1.
|
4
|
+
version: 1.1.5
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -15,10 +15,11 @@ authors:
|
|
15
15
|
- Larry Salibra
|
16
16
|
- Paul Schreiber
|
17
17
|
- Ben Hutton
|
18
|
+
- James Martin
|
18
19
|
autorequire:
|
19
20
|
bindir: bin
|
20
21
|
cert_chain: []
|
21
|
-
date: 2012-
|
22
|
+
date: 2012-08-01 00:00:00.000000000 Z
|
22
23
|
dependencies:
|
23
24
|
- !ruby/object:Gem::Dependency
|
24
25
|
name: money
|