change-ruby 1.0.2 → 1.0.3

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.
Files changed (3) hide show
  1. data/lib/requests/client.rb +7 -2
  2. data/test/client_test.rb +10 -0
  3. metadata +10 -25
@@ -40,7 +40,12 @@ module Change
40
40
  when 200, 202
41
41
  response.parsed_response
42
42
  else
43
- messages = response.parsed_response['messages']
43
+ messages = if response.code == 500
44
+ ['A server error has occurred.']
45
+ else
46
+ response.parsed_response['messages']
47
+ end
48
+
44
49
  raise ChangeException.new(messages, response.code), messages.join(' '), caller
45
50
  end
46
51
  end
@@ -71,5 +76,5 @@ module Change
71
76
  end
72
77
 
73
78
  end
74
- end
79
+ end
75
80
  end
data/test/client_test.rb CHANGED
@@ -56,6 +56,16 @@ describe 'Client' do
56
56
  lambda { @petition.load(1) }.must_raise(Change::Exceptions::ChangeException)
57
57
  end
58
58
 
59
+ it "should raise an exception if the response is a server error" do
60
+ url_to_be_called = 'https://api.change.org/v1/petitions/1'
61
+ params = { :api_key => @api_key_example }
62
+ @client.expects(:send)
63
+ .with('get', url_to_be_called, params)
64
+ .once
65
+ .returns(MockResponse.new(500, "<html>You broke me!</html>"))
66
+ lambda { @petition.load(1) }.must_raise(Change::Exceptions::ChangeException)
67
+ end
68
+
59
69
  end
60
70
 
61
71
  describe '#final_url' do
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: change-ruby
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.2
4
+ version: 1.0.3
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,27 +9,22 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2013-02-20 00:00:00.000000000 Z
12
+ date: 2013-03-05 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: httparty
16
- requirement: !ruby/object:Gem::Requirement
16
+ requirement: &2153892880 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - '='
19
+ - - =
20
20
  - !ruby/object:Gem::Version
21
21
  version: 0.10.2
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: !ruby/object:Gem::Requirement
25
- none: false
26
- requirements:
27
- - - '='
28
- - !ruby/object:Gem::Version
29
- version: 0.10.2
24
+ version_requirements: *2153892880
30
25
  - !ruby/object:Gem::Dependency
31
26
  name: rake
32
- requirement: !ruby/object:Gem::Requirement
27
+ requirement: &2153892400 !ruby/object:Gem::Requirement
33
28
  none: false
34
29
  requirements:
35
30
  - - ! '>='
@@ -37,15 +32,10 @@ dependencies:
37
32
  version: '0'
38
33
  type: :development
39
34
  prerelease: false
40
- version_requirements: !ruby/object:Gem::Requirement
41
- none: false
42
- requirements:
43
- - - ! '>='
44
- - !ruby/object:Gem::Version
45
- version: '0'
35
+ version_requirements: *2153892400
46
36
  - !ruby/object:Gem::Dependency
47
37
  name: mocha
48
- requirement: !ruby/object:Gem::Requirement
38
+ requirement: &2153891840 !ruby/object:Gem::Requirement
49
39
  none: false
50
40
  requirements:
51
41
  - - ! '>='
@@ -53,12 +43,7 @@ dependencies:
53
43
  version: '0'
54
44
  type: :development
55
45
  prerelease: false
56
- version_requirements: !ruby/object:Gem::Requirement
57
- none: false
58
- requirements:
59
- - - ! '>='
60
- - !ruby/object:Gem::Version
61
- version: '0'
46
+ version_requirements: *2153891840
62
47
  description: A Ruby library for the Change.org API.
63
48
  email: eric@ericlukoff.com
64
49
  executables: []
@@ -105,7 +90,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
105
90
  version: '0'
106
91
  requirements: []
107
92
  rubyforge_project:
108
- rubygems_version: 1.8.23
93
+ rubygems_version: 1.8.17
109
94
  signing_key:
110
95
  specification_version: 3
111
96
  summary: Change.org API Ruby Library (unofficial)