twitter 4.3.0 → 4.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (60) hide show
  1. data/.yardopts +10 -0
  2. data/CHANGELOG.md +123 -110
  3. data/CONTRIBUTING.md +51 -0
  4. data/README.md +17 -2
  5. data/lib/twitter/api/direct_messages.rb +3 -6
  6. data/lib/twitter/api/favorites.rb +6 -13
  7. data/lib/twitter/api/friends_and_followers.rb +76 -8
  8. data/lib/twitter/api/lists.rb +65 -36
  9. data/lib/twitter/api/places_and_geo.rb +3 -3
  10. data/lib/twitter/api/saved_searches.rb +2 -2
  11. data/lib/twitter/api/spam_reporting.rb +2 -2
  12. data/lib/twitter/api/suggested_users.rb +1 -1
  13. data/lib/twitter/api/timelines.rb +12 -8
  14. data/lib/twitter/api/tweets.rb +8 -12
  15. data/lib/twitter/api/undocumented.rb +3 -3
  16. data/lib/twitter/api/users.rb +16 -10
  17. data/lib/twitter/api/utils.rb +109 -30
  18. data/lib/twitter/base.rb +15 -5
  19. data/lib/twitter/basic_user.rb +0 -1
  20. data/lib/twitter/client.rb +16 -37
  21. data/lib/twitter/core_ext/enumerable.rb +2 -2
  22. data/lib/twitter/default.rb +5 -8
  23. data/lib/twitter/exceptable.rb +36 -0
  24. data/lib/twitter/factory.rb +4 -4
  25. data/lib/twitter/list.rb +0 -1
  26. data/lib/twitter/request/multipart_with_file.rb +5 -7
  27. data/lib/twitter/search_results.rb +10 -6
  28. data/lib/twitter/settings.rb +0 -1
  29. data/lib/twitter/source_user.rb +0 -7
  30. data/lib/twitter/target_user.rb +0 -1
  31. data/lib/twitter/tweet.rb +15 -17
  32. data/lib/twitter/user.rb +4 -14
  33. data/lib/twitter/version.rb +4 -4
  34. data/spec/fixtures/followers_list.json +1 -0
  35. data/spec/fixtures/friends_list.json +1 -0
  36. data/spec/fixtures/ids_list.json +1 -1
  37. data/spec/fixtures/ids_list2.json +1 -1
  38. data/spec/helper.rb +9 -8
  39. data/spec/twitter/action_factory_spec.rb +1 -1
  40. data/spec/twitter/api/favorites_spec.rb +2 -2
  41. data/spec/twitter/api/friends_and_followers_spec.rb +102 -2
  42. data/spec/twitter/api/spam_reporting_spec.rb +2 -2
  43. data/spec/twitter/api/tweets_spec.rb +2 -2
  44. data/spec/twitter/api/users_spec.rb +107 -49
  45. data/spec/twitter/base_spec.rb +1 -1
  46. data/spec/twitter/client_spec.rb +4 -4
  47. data/spec/twitter/cursor_spec.rb +2 -2
  48. data/spec/twitter/error/client_error_spec.rb +16 -5
  49. data/spec/twitter/error/server_error_spec.rb +1 -1
  50. data/spec/twitter/error_spec.rb +2 -2
  51. data/spec/twitter/geo_factory_spec.rb +1 -1
  52. data/spec/twitter/identifiable_spec.rb +2 -2
  53. data/spec/twitter/media_factory_spec.rb +1 -1
  54. data/spec/twitter/search_results_spec.rb +11 -0
  55. data/spec/twitter/tweet_spec.rb +11 -0
  56. data/twitter.gemspec +3 -2
  57. metadata +190 -173
  58. data/lib/twitter/core_ext/array.rb +0 -7
  59. data/lib/twitter/core_ext/hash.rb +0 -100
  60. data/lib/twitter/core_ext/string.rb +0 -10
@@ -23,7 +23,7 @@ describe Twitter::Cursor do
23
23
  end
24
24
  it "fetches all" do
25
25
  follower_ids = @client.follower_ids("sferik").all
26
- expect(follower_ids.size).to eq 5993
26
+ expect(follower_ids.size).to eq 6
27
27
  end
28
28
  end
29
29
 
@@ -41,7 +41,7 @@ describe Twitter::Cursor do
41
41
  it "iterates" do
42
42
  count = 0
43
43
  @client.follower_ids("sferik").each{count += 1}
44
- expect(count).to eq 5993
44
+ expect(count).to eq 6
45
45
  end
46
46
  end
47
47
 
@@ -14,18 +14,29 @@ describe Twitter::Error::ClientError do
14
14
  stub_get("/1.1/statuses/user_timeline.json").with(:query => {:screen_name => 'sferik'}).to_return(:status => status, :body => body_message)
15
15
  end
16
16
  it "raises #{exception.name}" do
17
- expect{@client.user_timeline('sferik')}.to raise_error(exception)
17
+ expect{@client.user_timeline('sferik')}.to raise_error exception
18
18
  end
19
19
  end
20
20
  end
21
21
  end
22
22
 
23
23
  context "when response status is 404 from lookup" do
24
- before do
25
- stub_post("/1.1/users/lookup.json").with(:body => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
24
+ context "using a post request" do
25
+ before do
26
+ stub_post("/1.1/users/lookup.json").with(:body => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
27
+ end
28
+ it "raises Twitter::Error::NotFound" do
29
+ expect{@client.users('not_on_twitter')}.to raise_error Twitter::Error::NotFound
30
+ end
26
31
  end
27
- it "raises Twitter::Error::NotFound" do
28
- expect{@client.users('not_on_twitter')}.to raise_error(Twitter::Error::NotFound)
32
+
33
+ context "using a get request" do
34
+ before do
35
+ stub_get("/1.1/users/lookup.json").with(:query => {:screen_name => "not_on_twitter"}).to_return(:status => 404, :body => fixture('no_user_matches.json'))
36
+ end
37
+ it "raises Twitter::Error::NotFound" do
38
+ expect{@client.users('not_on_twitter', :method => :get)}.to raise_error Twitter::Error::NotFound
39
+ end
29
40
  end
30
41
  end
31
42
 
@@ -12,7 +12,7 @@ describe Twitter::Error::ServerError do
12
12
  stub_get("/1.1/statuses/user_timeline.json").with(:query => {:screen_name => 'sferik'}).to_return(:status => status)
13
13
  end
14
14
  it "raises #{exception.name}" do
15
- expect{@client.user_timeline('sferik')}.to raise_error(exception)
15
+ expect{@client.user_timeline('sferik')}.to raise_error exception
16
16
  end
17
17
  end
18
18
  end
@@ -5,12 +5,12 @@ describe Twitter::Error do
5
5
  describe "#initialize" do
6
6
  it "wraps another error class" do
7
7
  begin
8
- raise Faraday::Error::ClientError.new("Oups")
8
+ raise Faraday::Error::ClientError.new("Oops")
9
9
  rescue Faraday::Error::ClientError
10
10
  begin
11
11
  raise Twitter::Error
12
12
  rescue Twitter::Error => error
13
- expect(error.message).to eq "Oups"
13
+ expect(error.message).to eq "Oops"
14
14
  expect(error.wrapped_exception.class).to eq Faraday::Error::ClientError
15
15
  end
16
16
  end
@@ -12,7 +12,7 @@ describe Twitter::GeoFactory do
12
12
  expect(geo).to be_a Twitter::Geo::Polygon
13
13
  end
14
14
  it "raises an ArgumentError when type is not specified" do
15
- expect{Twitter::GeoFactory.fetch_or_new}.to raise_error(ArgumentError, "argument must have :type key")
15
+ expect{Twitter::GeoFactory.fetch_or_new}.to raise_error ArgumentError
16
16
  end
17
17
  end
18
18
 
@@ -4,7 +4,7 @@ describe Twitter::Identity do
4
4
 
5
5
  describe "#initialize" do
6
6
  it "raises an ArgumentError when type is not specified" do
7
- expect{Twitter::Identity.new}.to raise_error(ArgumentError, "argument must have an :id key")
7
+ expect{Twitter::Identity.new}.to raise_error ArgumentError
8
8
  end
9
9
  end
10
10
 
@@ -24,7 +24,7 @@ describe Twitter::Identity do
24
24
  end
25
25
 
26
26
  it "raises an error on objects that don't exist" do
27
- expect{Twitter::Identity.fetch(:id => 6)}.to raise_error(Twitter::Error::IdentityMapKeyError)
27
+ expect{Twitter::Identity.fetch(:id => 6)}.to raise_error Twitter::Error::IdentityMapKeyError
28
28
  end
29
29
  end
30
30
  end
@@ -8,7 +8,7 @@ describe Twitter::MediaFactory do
8
8
  expect(media).to be_a Twitter::Media::Photo
9
9
  end
10
10
  it "raises an ArgumentError when type is not specified" do
11
- expect{Twitter::MediaFactory.fetch_or_new}.to raise_error(ArgumentError, "argument must have :type key")
11
+ expect{Twitter::MediaFactory.fetch_or_new}.to raise_error ArgumentError
12
12
  end
13
13
  end
14
14
 
@@ -74,6 +74,17 @@ describe Twitter::SearchResults do
74
74
  end
75
75
  end
76
76
 
77
+ describe "#search_metadata?" do
78
+ it "returns true when search_metadata is set" do
79
+ search_metadata = Twitter::SearchResults.new(:search_metadata => {}).search_metadata?
80
+ expect(search_metadata).to be_true
81
+ end
82
+ it "returns false when search_metadata is not set" do
83
+ search_metadata = Twitter::SearchResults.new.search_metadata?
84
+ expect(search_metadata).to be_false
85
+ end
86
+ end
87
+
77
88
  describe "#since_id" do
78
89
  it "returns an ID" do
79
90
  since_id = Twitter::SearchResults.new(:search_metadata => {:since_id => 250126199840518145}).since_id
@@ -288,6 +288,17 @@ describe Twitter::Tweet do
288
288
  end
289
289
  end
290
290
 
291
+ describe "#user?" do
292
+ it "returns true when status is set" do
293
+ user = Twitter::Tweet.new(:id => 28669546014, :user => {:id => 7505382}).user?
294
+ expect(user).to be_true
295
+ end
296
+ it "returns false when status is not set" do
297
+ user = Twitter::Tweet.new(:id => 28669546014).user?
298
+ expect(user).to be_false
299
+ end
300
+ end
301
+
291
302
  describe "#user_mentions" do
292
303
  it "returns an Array of Entity::UserMention when entities are set" do
293
304
  user_mentions_hash = [
@@ -5,8 +5,9 @@ Gem::Specification.new do |spec|
5
5
  spec.add_dependency 'faraday', '~> 0.8'
6
6
  spec.add_dependency 'multi_json', '~> 1.3'
7
7
  spec.add_dependency 'simple_oauth', '~> 0.1.6'
8
- spec.add_development_dependency 'json'
8
+ spec.add_development_dependency 'oj'
9
9
  spec.add_development_dependency 'pry'
10
+ spec.add_development_dependency 'pry-nav'
10
11
  spec.add_development_dependency 'rake'
11
12
  spec.add_development_dependency 'redcarpet'
12
13
  spec.add_development_dependency 'rspec'
@@ -17,7 +18,7 @@ Gem::Specification.new do |spec|
17
18
  spec.authors = ["John Nunemaker", "Wynn Netherland", "Erik Michaels-Ober", "Steve Richert"]
18
19
  spec.description = %q{A Ruby interface to the Twitter API.}
19
20
  spec.email = ['nunemaker@gmail.com', 'wynn.netherland@gmail.com', 'sferik@gmail.com', 'steve.richert@gmail.com']
20
- spec.files = %w(CHANGELOG.md LICENSE.md README.md Rakefile twitter.gemspec)
21
+ spec.files = %w(.yardopts CHANGELOG.md CONTRIBUTING.md LICENSE.md README.md Rakefile twitter.gemspec)
21
22
  spec.files += Dir.glob("lib/**/*.rb")
22
23
  spec.files += Dir.glob("spec/**/*")
23
24
  spec.homepage = 'http://sferik.github.com/twitter/'
metadata CHANGED
@@ -1,10 +1,15 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: twitter
3
- version: !ruby/object:Gem::Version
4
- version: 4.3.0
3
+ version: !ruby/object:Gem::Version
4
+ hash: 47
5
5
  prerelease:
6
+ segments:
7
+ - 4
8
+ - 4
9
+ - 0
10
+ version: 4.4.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - John Nunemaker
9
14
  - Wynn Netherland
10
15
  - Erik Michaels-Ober
@@ -12,211 +17,211 @@ authors:
12
17
  autorequire:
13
18
  bindir: bin
14
19
  cert_chain: []
15
- date: 2012-11-20 00:00:00.000000000 Z
16
- dependencies:
17
- - !ruby/object:Gem::Dependency
20
+
21
+ date: 2012-11-30 00:00:00 Z
22
+ dependencies:
23
+ - !ruby/object:Gem::Dependency
18
24
  name: faraday
19
- requirement: !ruby/object:Gem::Requirement
20
- none: false
21
- requirements:
22
- - - ~>
23
- - !ruby/object:Gem::Version
24
- version: '0.8'
25
- type: :runtime
26
25
  prerelease: false
27
- version_requirements: !ruby/object:Gem::Requirement
28
- none: false
29
- requirements:
30
- - - ~>
31
- - !ruby/object:Gem::Version
32
- version: '0.8'
33
- - !ruby/object:Gem::Dependency
34
- name: multi_json
35
- requirement: !ruby/object:Gem::Requirement
26
+ requirement: &id001 !ruby/object:Gem::Requirement
36
27
  none: false
37
- requirements:
28
+ requirements:
38
29
  - - ~>
39
- - !ruby/object:Gem::Version
40
- version: '1.3'
30
+ - !ruby/object:Gem::Version
31
+ hash: 27
32
+ segments:
33
+ - 0
34
+ - 8
35
+ version: "0.8"
41
36
  type: :runtime
37
+ version_requirements: *id001
38
+ - !ruby/object:Gem::Dependency
39
+ name: multi_json
42
40
  prerelease: false
43
- version_requirements: !ruby/object:Gem::Requirement
41
+ requirement: &id002 !ruby/object:Gem::Requirement
44
42
  none: false
45
- requirements:
43
+ requirements:
46
44
  - - ~>
47
- - !ruby/object:Gem::Version
48
- version: '1.3'
49
- - !ruby/object:Gem::Dependency
45
+ - !ruby/object:Gem::Version
46
+ hash: 9
47
+ segments:
48
+ - 1
49
+ - 3
50
+ version: "1.3"
51
+ type: :runtime
52
+ version_requirements: *id002
53
+ - !ruby/object:Gem::Dependency
50
54
  name: simple_oauth
51
- requirement: !ruby/object:Gem::Requirement
55
+ prerelease: false
56
+ requirement: &id003 !ruby/object:Gem::Requirement
52
57
  none: false
53
- requirements:
58
+ requirements:
54
59
  - - ~>
55
- - !ruby/object:Gem::Version
60
+ - !ruby/object:Gem::Version
61
+ hash: 23
62
+ segments:
63
+ - 0
64
+ - 1
65
+ - 6
56
66
  version: 0.1.6
57
67
  type: :runtime
68
+ version_requirements: *id003
69
+ - !ruby/object:Gem::Dependency
70
+ name: oj
58
71
  prerelease: false
59
- version_requirements: !ruby/object:Gem::Requirement
72
+ requirement: &id004 !ruby/object:Gem::Requirement
60
73
  none: false
61
- requirements:
62
- - - ~>
63
- - !ruby/object:Gem::Version
64
- version: 0.1.6
65
- - !ruby/object:Gem::Dependency
66
- name: json
67
- requirement: !ruby/object:Gem::Requirement
68
- none: false
69
- requirements:
70
- - - ! '>='
71
- - !ruby/object:Gem::Version
72
- version: '0'
74
+ requirements:
75
+ - - ">="
76
+ - !ruby/object:Gem::Version
77
+ hash: 3
78
+ segments:
79
+ - 0
80
+ version: "0"
73
81
  type: :development
74
- prerelease: false
75
- version_requirements: !ruby/object:Gem::Requirement
76
- none: false
77
- requirements:
78
- - - ! '>='
79
- - !ruby/object:Gem::Version
80
- version: '0'
81
- - !ruby/object:Gem::Dependency
82
+ version_requirements: *id004
83
+ - !ruby/object:Gem::Dependency
82
84
  name: pry
83
- requirement: !ruby/object:Gem::Requirement
85
+ prerelease: false
86
+ requirement: &id005 !ruby/object:Gem::Requirement
84
87
  none: false
85
- requirements:
86
- - - ! '>='
87
- - !ruby/object:Gem::Version
88
- version: '0'
88
+ requirements:
89
+ - - ">="
90
+ - !ruby/object:Gem::Version
91
+ hash: 3
92
+ segments:
93
+ - 0
94
+ version: "0"
89
95
  type: :development
96
+ version_requirements: *id005
97
+ - !ruby/object:Gem::Dependency
98
+ name: pry-nav
90
99
  prerelease: false
91
- version_requirements: !ruby/object:Gem::Requirement
100
+ requirement: &id006 !ruby/object:Gem::Requirement
92
101
  none: false
93
- requirements:
94
- - - ! '>='
95
- - !ruby/object:Gem::Version
96
- version: '0'
97
- - !ruby/object:Gem::Dependency
98
- name: rake
99
- requirement: !ruby/object:Gem::Requirement
100
- none: false
101
- requirements:
102
- - - ! '>='
103
- - !ruby/object:Gem::Version
104
- version: '0'
102
+ requirements:
103
+ - - ">="
104
+ - !ruby/object:Gem::Version
105
+ hash: 3
106
+ segments:
107
+ - 0
108
+ version: "0"
105
109
  type: :development
110
+ version_requirements: *id006
111
+ - !ruby/object:Gem::Dependency
112
+ name: rake
106
113
  prerelease: false
107
- version_requirements: !ruby/object:Gem::Requirement
114
+ requirement: &id007 !ruby/object:Gem::Requirement
108
115
  none: false
109
- requirements:
110
- - - ! '>='
111
- - !ruby/object:Gem::Version
112
- version: '0'
113
- - !ruby/object:Gem::Dependency
114
- name: redcarpet
115
- requirement: !ruby/object:Gem::Requirement
116
- none: false
117
- requirements:
118
- - - ! '>='
119
- - !ruby/object:Gem::Version
120
- version: '0'
116
+ requirements:
117
+ - - ">="
118
+ - !ruby/object:Gem::Version
119
+ hash: 3
120
+ segments:
121
+ - 0
122
+ version: "0"
121
123
  type: :development
124
+ version_requirements: *id007
125
+ - !ruby/object:Gem::Dependency
126
+ name: redcarpet
122
127
  prerelease: false
123
- version_requirements: !ruby/object:Gem::Requirement
128
+ requirement: &id008 !ruby/object:Gem::Requirement
124
129
  none: false
125
- requirements:
126
- - - ! '>='
127
- - !ruby/object:Gem::Version
128
- version: '0'
129
- - !ruby/object:Gem::Dependency
130
- name: rspec
131
- requirement: !ruby/object:Gem::Requirement
132
- none: false
133
- requirements:
134
- - - ! '>='
135
- - !ruby/object:Gem::Version
136
- version: '0'
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ hash: 3
134
+ segments:
135
+ - 0
136
+ version: "0"
137
137
  type: :development
138
+ version_requirements: *id008
139
+ - !ruby/object:Gem::Dependency
140
+ name: rspec
138
141
  prerelease: false
139
- version_requirements: !ruby/object:Gem::Requirement
142
+ requirement: &id009 !ruby/object:Gem::Requirement
140
143
  none: false
141
- requirements:
142
- - - ! '>='
143
- - !ruby/object:Gem::Version
144
- version: '0'
145
- - !ruby/object:Gem::Dependency
146
- name: simplecov
147
- requirement: !ruby/object:Gem::Requirement
148
- none: false
149
- requirements:
150
- - - ! '>='
151
- - !ruby/object:Gem::Version
152
- version: '0'
144
+ requirements:
145
+ - - ">="
146
+ - !ruby/object:Gem::Version
147
+ hash: 3
148
+ segments:
149
+ - 0
150
+ version: "0"
153
151
  type: :development
152
+ version_requirements: *id009
153
+ - !ruby/object:Gem::Dependency
154
+ name: simplecov
154
155
  prerelease: false
155
- version_requirements: !ruby/object:Gem::Requirement
156
- none: false
157
- requirements:
158
- - - ! '>='
159
- - !ruby/object:Gem::Version
160
- version: '0'
161
- - !ruby/object:Gem::Dependency
162
- name: timecop
163
- requirement: !ruby/object:Gem::Requirement
156
+ requirement: &id010 !ruby/object:Gem::Requirement
164
157
  none: false
165
- requirements:
166
- - - ! '>='
167
- - !ruby/object:Gem::Version
168
- version: '0'
158
+ requirements:
159
+ - - ">="
160
+ - !ruby/object:Gem::Version
161
+ hash: 3
162
+ segments:
163
+ - 0
164
+ version: "0"
169
165
  type: :development
166
+ version_requirements: *id010
167
+ - !ruby/object:Gem::Dependency
168
+ name: timecop
170
169
  prerelease: false
171
- version_requirements: !ruby/object:Gem::Requirement
170
+ requirement: &id011 !ruby/object:Gem::Requirement
172
171
  none: false
173
- requirements:
174
- - - ! '>='
175
- - !ruby/object:Gem::Version
176
- version: '0'
177
- - !ruby/object:Gem::Dependency
178
- name: webmock
179
- requirement: !ruby/object:Gem::Requirement
180
- none: false
181
- requirements:
182
- - - ! '>='
183
- - !ruby/object:Gem::Version
184
- version: '0'
172
+ requirements:
173
+ - - ">="
174
+ - !ruby/object:Gem::Version
175
+ hash: 3
176
+ segments:
177
+ - 0
178
+ version: "0"
185
179
  type: :development
180
+ version_requirements: *id011
181
+ - !ruby/object:Gem::Dependency
182
+ name: webmock
186
183
  prerelease: false
187
- version_requirements: !ruby/object:Gem::Requirement
184
+ requirement: &id012 !ruby/object:Gem::Requirement
188
185
  none: false
189
- requirements:
190
- - - ! '>='
191
- - !ruby/object:Gem::Version
192
- version: '0'
193
- - !ruby/object:Gem::Dependency
194
- name: yard
195
- requirement: !ruby/object:Gem::Requirement
196
- none: false
197
- requirements:
198
- - - ! '>='
199
- - !ruby/object:Gem::Version
200
- version: '0'
186
+ requirements:
187
+ - - ">="
188
+ - !ruby/object:Gem::Version
189
+ hash: 3
190
+ segments:
191
+ - 0
192
+ version: "0"
201
193
  type: :development
194
+ version_requirements: *id012
195
+ - !ruby/object:Gem::Dependency
196
+ name: yard
202
197
  prerelease: false
203
- version_requirements: !ruby/object:Gem::Requirement
198
+ requirement: &id013 !ruby/object:Gem::Requirement
204
199
  none: false
205
- requirements:
206
- - - ! '>='
207
- - !ruby/object:Gem::Version
208
- version: '0'
200
+ requirements:
201
+ - - ">="
202
+ - !ruby/object:Gem::Version
203
+ hash: 3
204
+ segments:
205
+ - 0
206
+ version: "0"
207
+ type: :development
208
+ version_requirements: *id013
209
209
  description: A Ruby interface to the Twitter API.
210
- email:
210
+ email:
211
211
  - nunemaker@gmail.com
212
212
  - wynn.netherland@gmail.com
213
213
  - sferik@gmail.com
214
214
  - steve.richert@gmail.com
215
215
  executables: []
216
+
216
217
  extensions: []
218
+
217
219
  extra_rdoc_files: []
218
- files:
220
+
221
+ files:
222
+ - .yardopts
219
223
  - CHANGELOG.md
224
+ - CONTRIBUTING.md
220
225
  - LICENSE.md
221
226
  - README.md
222
227
  - Rakefile
@@ -250,11 +255,8 @@ files:
250
255
  - lib/twitter/client.rb
251
256
  - lib/twitter/configurable.rb
252
257
  - lib/twitter/configuration.rb
253
- - lib/twitter/core_ext/array.rb
254
258
  - lib/twitter/core_ext/enumerable.rb
255
- - lib/twitter/core_ext/hash.rb
256
259
  - lib/twitter/core_ext/kernel.rb
257
- - lib/twitter/core_ext/string.rb
258
260
  - lib/twitter/creatable.rb
259
261
  - lib/twitter/cursor.rb
260
262
  - lib/twitter/default.rb
@@ -281,6 +283,7 @@ files:
281
283
  - lib/twitter/error/unauthorized.rb
282
284
  - lib/twitter/error/unprocessable_entity.rb
283
285
  - lib/twitter/error.rb
286
+ - lib/twitter/exceptable.rb
284
287
  - lib/twitter/factory.rb
285
288
  - lib/twitter/geo/point.rb
286
289
  - lib/twitter/geo/polygon.rb
@@ -331,8 +334,10 @@ files:
331
334
  - spec/fixtures/end_session.json
332
335
  - spec/fixtures/enhance_your_calm.text
333
336
  - spec/fixtures/favorites.json
337
+ - spec/fixtures/followers_list.json
334
338
  - spec/fixtures/following.json
335
339
  - spec/fixtures/forbidden.json
340
+ - spec/fixtures/friends_list.json
336
341
  - spec/fixtures/friendships.json
337
342
  - spec/fixtures/ids.json
338
343
  - spec/fixtures/ids_list.json
@@ -453,31 +458,41 @@ files:
453
458
  - spec/twitter/user_spec.rb
454
459
  - spec/twitter_spec.rb
455
460
  homepage: http://sferik.github.com/twitter/
456
- licenses:
461
+ licenses:
457
462
  - MIT
458
463
  post_install_message:
459
464
  rdoc_options: []
460
- require_paths:
465
+
466
+ require_paths:
461
467
  - lib
462
- required_ruby_version: !ruby/object:Gem::Requirement
468
+ required_ruby_version: !ruby/object:Gem::Requirement
463
469
  none: false
464
- requirements:
465
- - - ! '>='
466
- - !ruby/object:Gem::Version
467
- version: '0'
468
- required_rubygems_version: !ruby/object:Gem::Requirement
470
+ requirements:
471
+ - - ">="
472
+ - !ruby/object:Gem::Version
473
+ hash: 3
474
+ segments:
475
+ - 0
476
+ version: "0"
477
+ required_rubygems_version: !ruby/object:Gem::Requirement
469
478
  none: false
470
- requirements:
471
- - - ! '>='
472
- - !ruby/object:Gem::Version
479
+ requirements:
480
+ - - ">="
481
+ - !ruby/object:Gem::Version
482
+ hash: 23
483
+ segments:
484
+ - 1
485
+ - 3
486
+ - 6
473
487
  version: 1.3.6
474
488
  requirements: []
489
+
475
490
  rubyforge_project:
476
491
  rubygems_version: 1.8.24
477
492
  signing_key:
478
493
  specification_version: 3
479
494
  summary: A Ruby interface to the Twitter API.
480
- test_files:
495
+ test_files:
481
496
  - spec/fixtures/about_me.json
482
497
  - spec/fixtures/activity_summary.json
483
498
  - spec/fixtures/all.json
@@ -496,8 +511,10 @@ test_files:
496
511
  - spec/fixtures/end_session.json
497
512
  - spec/fixtures/enhance_your_calm.text
498
513
  - spec/fixtures/favorites.json
514
+ - spec/fixtures/followers_list.json
499
515
  - spec/fixtures/following.json
500
516
  - spec/fixtures/forbidden.json
517
+ - spec/fixtures/friends_list.json
501
518
  - spec/fixtures/friendships.json
502
519
  - spec/fixtures/ids.json
503
520
  - spec/fixtures/ids_list.json