change-ruby 1.0.2 → 1.0.3

Sign up to get free protection for your applications and to get access to all the features.
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)