File tree Expand file tree Collapse file tree
Expand file tree Collapse file tree Original file line number Diff line number Diff line change @@ -44,16 +44,20 @@ def parse_meta
4444 end
4545
4646 def parse_members
47- { } . tap do |members |
48- if body . is_a? ( Hash )
49- body . each do |key , value |
50- klass = if value . is_a? ( Array )
51- Drip ::Collections . find_class ( key )
52- else
53- Drip ::Resources . find_class ( key )
54- end
47+ if status == 429
48+ body
49+ else
50+ { } . tap do |members |
51+ if body . is_a? ( Hash )
52+ body . each do |key , value |
53+ klass = if value . is_a? ( Array )
54+ Drip ::Collections . find_class ( key )
55+ else
56+ Drip ::Resources . find_class ( key )
57+ end
5558
56- members [ key ] = klass . new ( value )
59+ members [ key ] = klass . new ( value )
60+ end
5761 end
5862 end
5963 end
Original file line number Diff line number Diff line change @@ -121,4 +121,16 @@ class Drip::ResponseTest < Drip::TestCase
121121 assert_equal 1 , @subject . subscribers . count
122122 end
123123 end
124+
125+ context "rate limit response" do
126+ setup do
127+ @body = { "message" => "API rate limit exceeded. Please try again in an hour." }
128+ @subject = Drip ::Response . new ( 429 , @body )
129+ end
130+
131+ should "parse correctly" do
132+ assert_equal 429 , @subject . status
133+ assert_equal @body [ "message" ] , @subject . message
134+ end
135+ end
124136end
You can’t perform that action at this time.
0 commit comments