twitter 4.8.1 → 5.0.0.rc.1
Sign up to get free protection for your applications and to get access to all the features.
- data.tar.gz.sig +0 -0
- data/CHANGELOG.md +30 -0
- data/LICENSE.md +1 -1
- data/README.md +386 -266
- data/lib/twitter.rb +4 -39
- data/lib/twitter/arguments.rb +11 -0
- data/lib/twitter/base.rb +89 -68
- data/lib/twitter/client.rb +69 -110
- data/lib/twitter/configuration.rb +7 -3
- data/lib/twitter/creatable.rb +2 -4
- data/lib/twitter/cursor.rb +50 -42
- data/lib/twitter/direct_message.rb +2 -11
- data/lib/twitter/entity/uri.rb +13 -0
- data/lib/twitter/enumerable.rb +15 -0
- data/lib/twitter/error.rb +55 -7
- data/lib/twitter/error/already_favorited.rb +1 -1
- data/lib/twitter/error/already_posted.rb +10 -0
- data/lib/twitter/error/already_retweeted.rb +1 -1
- data/lib/twitter/error/bad_gateway.rb +2 -3
- data/lib/twitter/error/bad_request.rb +2 -2
- data/lib/twitter/error/forbidden.rb +2 -2
- data/lib/twitter/error/gateway_timeout.rb +2 -3
- data/lib/twitter/error/internal_server_error.rb +2 -3
- data/lib/twitter/error/not_acceptable.rb +2 -2
- data/lib/twitter/error/not_found.rb +2 -2
- data/lib/twitter/error/service_unavailable.rb +2 -3
- data/lib/twitter/error/too_many_requests.rb +2 -2
- data/lib/twitter/error/unauthorized.rb +2 -2
- data/lib/twitter/error/unprocessable_entity.rb +2 -2
- data/lib/twitter/factory.rb +2 -8
- data/lib/twitter/geo_factory.rb +2 -2
- data/lib/twitter/geo_results.rb +36 -0
- data/lib/twitter/identity.rb +0 -22
- data/lib/twitter/list.rb +18 -4
- data/lib/twitter/media/photo.rb +3 -3
- data/lib/twitter/media_factory.rb +2 -2
- data/lib/twitter/null_object.rb +24 -0
- data/lib/twitter/oembed.rb +3 -2
- data/lib/twitter/place.rb +15 -9
- data/lib/twitter/profile_banner.rb +5 -3
- data/lib/twitter/rate_limit.rb +1 -17
- data/lib/twitter/relationship.rb +2 -10
- data/lib/twitter/rest/api/direct_messages.rb +135 -0
- data/lib/twitter/rest/api/favorites.rb +120 -0
- data/lib/twitter/rest/api/friends_and_followers.rb +290 -0
- data/lib/twitter/rest/api/help.rb +58 -0
- data/lib/twitter/rest/api/lists.rb +491 -0
- data/lib/twitter/rest/api/oauth.rb +45 -0
- data/lib/twitter/rest/api/places_and_geo.rb +104 -0
- data/lib/twitter/rest/api/saved_searches.rb +91 -0
- data/lib/twitter/rest/api/search.rb +37 -0
- data/lib/twitter/rest/api/spam_reporting.rb +29 -0
- data/lib/twitter/rest/api/suggested_users.rb +51 -0
- data/lib/twitter/rest/api/timelines.rb +202 -0
- data/lib/twitter/rest/api/trends.rb +58 -0
- data/lib/twitter/rest/api/tweets.rb +293 -0
- data/lib/twitter/rest/api/undocumented.rb +52 -0
- data/lib/twitter/rest/api/users.rb +383 -0
- data/lib/twitter/rest/api/utils.rb +219 -0
- data/lib/twitter/rest/client.rb +193 -0
- data/lib/twitter/rest/request/multipart_with_file.rb +36 -0
- data/lib/twitter/rest/response/parse_json.rb +27 -0
- data/lib/twitter/{response → rest/response}/raise_error.rb +8 -11
- data/lib/twitter/search_results.rb +33 -21
- data/lib/twitter/settings.rb +1 -6
- data/lib/twitter/size.rb +1 -1
- data/lib/twitter/streaming/client.rb +77 -0
- data/lib/twitter/streaming/connection.rb +22 -0
- data/lib/twitter/streaming/response.rb +30 -0
- data/lib/twitter/suggestion.rb +4 -2
- data/lib/twitter/token.rb +8 -0
- data/lib/twitter/trend.rb +2 -1
- data/lib/twitter/trend_results.rb +59 -0
- data/lib/twitter/tweet.rb +41 -85
- data/lib/twitter/user.rb +51 -41
- data/lib/twitter/version.rb +4 -4
- data/spec/fixtures/already_posted.json +1 -0
- data/spec/fixtures/ids_list.json +1 -1
- data/spec/fixtures/ids_list2.json +1 -1
- data/spec/fixtures/search.json +1 -1
- data/spec/fixtures/search_malformed.json +1 -1
- data/spec/fixtures/track_streaming.json +3 -0
- data/spec/helper.rb +8 -13
- data/spec/twitter/base_spec.rb +25 -99
- data/spec/twitter/configuration_spec.rb +1 -1
- data/spec/twitter/cursor_spec.rb +13 -31
- data/spec/twitter/direct_message_spec.rb +41 -8
- data/spec/twitter/entity/uri_spec.rb +74 -0
- data/spec/twitter/error_spec.rb +59 -11
- data/spec/twitter/geo/point_spec.rb +1 -1
- data/spec/twitter/geo_factory_spec.rb +3 -3
- data/spec/twitter/geo_results_spec.rb +35 -0
- data/spec/twitter/identifiable_spec.rb +0 -21
- data/spec/twitter/list_spec.rb +51 -8
- data/spec/twitter/media/photo_spec.rb +118 -3
- data/spec/twitter/media_factory_spec.rb +2 -2
- data/spec/twitter/null_object_spec.rb +26 -0
- data/spec/twitter/oembed_spec.rb +69 -45
- data/spec/twitter/place_spec.rb +68 -12
- data/spec/twitter/profile_banner_spec.rb +1 -1
- data/spec/twitter/rate_limit_spec.rb +12 -12
- data/spec/twitter/relationship_spec.rb +31 -9
- data/spec/twitter/{api → rest/api}/direct_messages_spec.rb +22 -9
- data/spec/twitter/{api → rest/api}/favorites_spec.rb +80 -7
- data/spec/twitter/{api → rest/api}/friends_and_followers_spec.rb +104 -65
- data/spec/twitter/{api → rest/api}/geo_spec.rb +10 -10
- data/spec/twitter/{api → rest/api}/help_spec.rb +6 -6
- data/spec/twitter/{api → rest/api}/lists_spec.rb +77 -56
- data/spec/twitter/{api → rest/api}/oauth_spec.rb +6 -6
- data/spec/twitter/{api → rest/api}/saved_searches_spec.rb +7 -7
- data/spec/twitter/{api → rest/api}/search_spec.rb +8 -9
- data/spec/twitter/{api → rest/api}/spam_reporting_spec.rb +3 -3
- data/spec/twitter/{api → rest/api}/suggested_users_spec.rb +5 -5
- data/spec/twitter/{api → rest/api}/timelines_spec.rb +9 -9
- data/spec/twitter/{api → rest/api}/trends_spec.rb +6 -6
- data/spec/twitter/rest/api/tweets_spec.rb +503 -0
- data/spec/twitter/{api → rest/api}/undocumented_spec.rb +19 -45
- data/spec/twitter/{api → rest/api}/users_spec.rb +60 -35
- data/spec/twitter/rest/client_spec.rb +193 -0
- data/spec/twitter/saved_search_spec.rb +11 -0
- data/spec/twitter/search_results_spec.rb +29 -42
- data/spec/twitter/settings_spec.rb +17 -6
- data/spec/twitter/streaming/client_spec.rb +75 -0
- data/spec/twitter/token_spec.rb +16 -0
- data/spec/twitter/trend_results_spec.rb +89 -0
- data/spec/twitter/trend_spec.rb +23 -0
- data/spec/twitter/tweet_spec.rb +122 -115
- data/spec/twitter/user_spec.rb +136 -77
- data/spec/twitter_spec.rb +0 -119
- data/twitter.gemspec +8 -5
- metadata +148 -141
- metadata.gz.sig +0 -0
- data/lib/twitter/action/favorite.rb +0 -19
- data/lib/twitter/action/follow.rb +0 -30
- data/lib/twitter/action/list_member_added.rb +0 -39
- data/lib/twitter/action/mention.rb +0 -46
- data/lib/twitter/action/reply.rb +0 -27
- data/lib/twitter/action/retweet.rb +0 -27
- data/lib/twitter/action/tweet.rb +0 -20
- data/lib/twitter/action_factory.rb +0 -22
- data/lib/twitter/api/arguments.rb +0 -13
- data/lib/twitter/api/direct_messages.rb +0 -148
- data/lib/twitter/api/favorites.rb +0 -126
- data/lib/twitter/api/friends_and_followers.rb +0 -334
- data/lib/twitter/api/help.rb +0 -64
- data/lib/twitter/api/lists.rb +0 -618
- data/lib/twitter/api/oauth.rb +0 -44
- data/lib/twitter/api/places_and_geo.rb +0 -121
- data/lib/twitter/api/saved_searches.rb +0 -99
- data/lib/twitter/api/search.rb +0 -37
- data/lib/twitter/api/spam_reporting.rb +0 -30
- data/lib/twitter/api/suggested_users.rb +0 -55
- data/lib/twitter/api/timelines.rb +0 -214
- data/lib/twitter/api/trends.rb +0 -63
- data/lib/twitter/api/tweets.rb +0 -304
- data/lib/twitter/api/undocumented.rb +0 -97
- data/lib/twitter/api/users.rb +0 -439
- data/lib/twitter/api/utils.rb +0 -187
- data/lib/twitter/configurable.rb +0 -96
- data/lib/twitter/default.rb +0 -102
- data/lib/twitter/entity/url.rb +0 -9
- data/lib/twitter/error/client_error.rb +0 -35
- data/lib/twitter/error/decode_error.rb +0 -9
- data/lib/twitter/error/identity_map_key_error.rb +0 -9
- data/lib/twitter/error/server_error.rb +0 -28
- data/lib/twitter/exceptable.rb +0 -36
- data/lib/twitter/identity_map.rb +0 -22
- data/lib/twitter/request/multipart_with_file.rb +0 -34
- data/lib/twitter/response/parse_json.rb +0 -25
- data/spec/fixtures/about_me.json +0 -1
- data/spec/fixtures/activity_summary.json +0 -1
- data/spec/fixtures/bad_gateway.json +0 -1
- data/spec/fixtures/bad_request.json +0 -1
- data/spec/fixtures/by_friends.json +0 -1
- data/spec/fixtures/end_session.json +0 -1
- data/spec/fixtures/forbidden.json +0 -1
- data/spec/fixtures/internal_server_error.json +0 -1
- data/spec/fixtures/not_acceptable.json +0 -1
- data/spec/fixtures/phoenix_search.phoenix +0 -1
- data/spec/fixtures/resolve.json +0 -1
- data/spec/fixtures/service_unavailable.json +0 -1
- data/spec/fixtures/totals.json +0 -1
- data/spec/fixtures/trends.json +0 -1
- data/spec/fixtures/unauthorized.json +0 -1
- data/spec/fixtures/video_facets.json +0 -1
- data/spec/twitter/action/favorite_spec.rb +0 -29
- data/spec/twitter/action/follow_spec.rb +0 -29
- data/spec/twitter/action/list_member_added_spec.rb +0 -41
- data/spec/twitter/action/mention_spec.rb +0 -52
- data/spec/twitter/action/reply_spec.rb +0 -41
- data/spec/twitter/action/retweet_spec.rb +0 -41
- data/spec/twitter/action_factory_spec.rb +0 -35
- data/spec/twitter/action_spec.rb +0 -16
- data/spec/twitter/api/tweets_spec.rb +0 -285
- data/spec/twitter/client_spec.rb +0 -223
- data/spec/twitter/error/client_error_spec.rb +0 -23
- data/spec/twitter/error/server_error_spec.rb +0 -20
@@ -1,9 +1,9 @@
|
|
1
1
|
require 'helper'
|
2
2
|
|
3
|
-
describe Twitter::API::PlacesAndGeo do
|
3
|
+
describe Twitter::REST::API::PlacesAndGeo do
|
4
4
|
|
5
5
|
before do
|
6
|
-
@client = Twitter::Client.new
|
6
|
+
@client = Twitter::REST::Client.new(:consumer_key => "CK", :consumer_secret => "CS", :access_token => "AT", :access_token_secret => "AS")
|
7
7
|
end
|
8
8
|
|
9
9
|
describe "#place" do
|
@@ -16,7 +16,7 @@ describe Twitter::API::PlacesAndGeo do
|
|
16
16
|
end
|
17
17
|
it "returns a place" do
|
18
18
|
place = @client.place("247f43d441defc03")
|
19
|
-
expect(place.name).to eq
|
19
|
+
expect(place.name).to eq("Twitter HQ")
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
@@ -30,8 +30,8 @@ describe Twitter::API::PlacesAndGeo do
|
|
30
30
|
end
|
31
31
|
it "returns places" do
|
32
32
|
places = @client.reverse_geocode(:lat => "37.7821120598956", :long => "-122.400612831116")
|
33
|
-
expect(places).to
|
34
|
-
expect(places.first.name).to eq
|
33
|
+
expect(places).to be_a Twitter::GeoResults
|
34
|
+
expect(places.first.name).to eq("Bernal Heights")
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
@@ -45,8 +45,8 @@ describe Twitter::API::PlacesAndGeo do
|
|
45
45
|
end
|
46
46
|
it "returns nearby places" do
|
47
47
|
places = @client.geo_search(:ip => "74.125.19.104")
|
48
|
-
expect(places).to
|
49
|
-
expect(places.first.name).to eq
|
48
|
+
expect(places).to be_a Twitter::GeoResults
|
49
|
+
expect(places.first.name).to eq("Bernal Heights")
|
50
50
|
end
|
51
51
|
end
|
52
52
|
|
@@ -60,8 +60,8 @@ describe Twitter::API::PlacesAndGeo do
|
|
60
60
|
end
|
61
61
|
it "returns similar places" do
|
62
62
|
places = @client.similar_places(:lat => "37.7821120598956", :long => "-122.400612831116", :name => "Twitter HQ")
|
63
|
-
expect(places).to
|
64
|
-
expect(places.first.name).to eq
|
63
|
+
expect(places).to be_a Twitter::GeoResults
|
64
|
+
expect(places.first.name).to eq("Bernal Heights")
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
@@ -75,7 +75,7 @@ describe Twitter::API::PlacesAndGeo do
|
|
75
75
|
end
|
76
76
|
it "returns a place" do
|
77
77
|
place = @client.place_create(:name => "@sferik's Apartment", :token => "22ff5b1f7159032cf69218c4d8bb78bc", :contained_within => "41bcb736f84a799e", :lat => "37.783699", :long => "-122.393581")
|
78
|
-
expect(place.name).to eq
|
78
|
+
expect(place.name).to eq("Twitter HQ")
|
79
79
|
end
|
80
80
|
end
|
81
81
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require 'helper'
|
2
2
|
|
3
|
-
describe Twitter::API::Help do
|
3
|
+
describe Twitter::REST::API::Help do
|
4
4
|
|
5
5
|
before do
|
6
|
-
@client = Twitter::Client.new
|
6
|
+
@client = Twitter::REST::Client.new(:consumer_key => "CK", :consumer_secret => "CS", :access_token => "AT", :access_token_secret => "AS")
|
7
7
|
end
|
8
8
|
|
9
9
|
describe "#configuration" do
|
@@ -17,7 +17,7 @@ describe Twitter::API::Help do
|
|
17
17
|
it "returns Twitter's current configuration" do
|
18
18
|
configuration = @client.configuration
|
19
19
|
expect(configuration).to be_a Twitter::Configuration
|
20
|
-
expect(configuration.characters_reserved_per_media).to eq
|
20
|
+
expect(configuration.characters_reserved_per_media).to eq(20)
|
21
21
|
end
|
22
22
|
end
|
23
23
|
|
@@ -33,7 +33,7 @@ describe Twitter::API::Help do
|
|
33
33
|
languages = @client.languages
|
34
34
|
expect(languages).to be_an Array
|
35
35
|
expect(languages.first).to be_a Twitter::Language
|
36
|
-
expect(languages.first.name).to eq
|
36
|
+
expect(languages.first.name).to eq("Portuguese")
|
37
37
|
end
|
38
38
|
end
|
39
39
|
|
@@ -47,7 +47,7 @@ describe Twitter::API::Help do
|
|
47
47
|
end
|
48
48
|
it "returns Twitter's Privacy Policy" do
|
49
49
|
privacy = @client.privacy
|
50
|
-
expect(privacy.split.first).to eq
|
50
|
+
expect(privacy.split.first).to eq("Twitter")
|
51
51
|
end
|
52
52
|
end
|
53
53
|
|
@@ -61,7 +61,7 @@ describe Twitter::API::Help do
|
|
61
61
|
end
|
62
62
|
it "returns Twitter's Terms of Service" do
|
63
63
|
tos = @client.tos
|
64
|
-
expect(tos.split.first).to eq
|
64
|
+
expect(tos.split.first).to eq("Terms")
|
65
65
|
end
|
66
66
|
end
|
67
67
|
|
@@ -1,9 +1,9 @@
|
|
1
1
|
require 'helper'
|
2
2
|
|
3
|
-
describe Twitter::API::Lists do
|
3
|
+
describe Twitter::REST::API::Lists do
|
4
4
|
|
5
5
|
before do
|
6
|
-
@client = Twitter::Client.new
|
6
|
+
@client = Twitter::REST::Client.new(:consumer_key => "CK", :consumer_secret => "CS", :access_token => "AT", :access_token_secret => "AS")
|
7
7
|
end
|
8
8
|
|
9
9
|
describe "#lists" do
|
@@ -18,7 +18,7 @@ describe Twitter::API::Lists do
|
|
18
18
|
lists = @client.lists
|
19
19
|
expect(lists).to be_an Array
|
20
20
|
expect(lists.first).to be_a Twitter::List
|
21
|
-
expect(lists.first.name).to eq
|
21
|
+
expect(lists.first.name).to eq("Rubyists")
|
22
22
|
end
|
23
23
|
end
|
24
24
|
|
@@ -35,7 +35,34 @@ describe Twitter::API::Lists do
|
|
35
35
|
tweets = @client.list_timeline("sferik", "presidents")
|
36
36
|
expect(tweets).to be_an Array
|
37
37
|
expect(tweets.first).to be_a Twitter::Tweet
|
38
|
-
expect(tweets.first.text).to eq
|
38
|
+
expect(tweets.first.text).to eq("Happy Birthday @imdane. Watch out for those @rally pranksters!")
|
39
|
+
end
|
40
|
+
context "with a URI object passed" do
|
41
|
+
it "requests the correct resource" do
|
42
|
+
list = URI.parse("https://twitter.com/sferik/presidents")
|
43
|
+
@client.list_timeline(list)
|
44
|
+
expect(a_get("/1.1/lists/statuses.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents"})).to have_been_made
|
45
|
+
end
|
46
|
+
end
|
47
|
+
context "with a URI string passed" do
|
48
|
+
it "requests the correct resource" do
|
49
|
+
@client.list_timeline("https://twitter.com/sferik/presidents")
|
50
|
+
expect(a_get("/1.1/lists/statuses.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents"})).to have_been_made
|
51
|
+
end
|
52
|
+
end
|
53
|
+
context "with URI objects passed" do
|
54
|
+
it "requests the correct resource" do
|
55
|
+
user = URI.parse("https://twitter.com/sferik")
|
56
|
+
list = URI.parse("https://twitter.com/sferik/presidents")
|
57
|
+
@client.list_timeline(user, list)
|
58
|
+
expect(a_get("/1.1/lists/statuses.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents"})).to have_been_made
|
59
|
+
end
|
60
|
+
end
|
61
|
+
context "with URI strings passed" do
|
62
|
+
it "requests the correct resource" do
|
63
|
+
@client.list_timeline("https://twitter.com/sferik", "https://twitter.com/sferik/presidents")
|
64
|
+
expect(a_get("/1.1/lists/statuses.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents"})).to have_been_made
|
65
|
+
end
|
39
66
|
end
|
40
67
|
end
|
41
68
|
context "without a screen name passed" do
|
@@ -62,7 +89,7 @@ describe Twitter::API::Lists do
|
|
62
89
|
it "returns the list" do
|
63
90
|
list = @client.list_remove_member("sferik", "presidents", 813286)
|
64
91
|
expect(list).to be_a Twitter::List
|
65
|
-
expect(list.name).to eq
|
92
|
+
expect(list.name).to eq("presidents")
|
66
93
|
end
|
67
94
|
end
|
68
95
|
context "without a screen name passed" do
|
@@ -89,16 +116,15 @@ describe Twitter::API::Lists do
|
|
89
116
|
it "returns the lists the specified user has been added to" do
|
90
117
|
memberships = @client.memberships("sferik")
|
91
118
|
expect(memberships).to be_a Twitter::Cursor
|
92
|
-
expect(memberships.
|
93
|
-
expect(memberships.
|
94
|
-
expect(memberships.lists.first.name).to eq "developer"
|
119
|
+
expect(memberships.first).to be_a Twitter::List
|
120
|
+
expect(memberships.first.name).to eq("developer")
|
95
121
|
end
|
96
|
-
context "with
|
122
|
+
context "with each" do
|
97
123
|
before do
|
98
124
|
stub_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"}).to_return(:body => fixture("memberships2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
99
125
|
end
|
100
126
|
it "requests the correct resource" do
|
101
|
-
@client.memberships("sferik").
|
127
|
+
@client.memberships("sferik").each{}
|
102
128
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
103
129
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"})).to have_been_made
|
104
130
|
end
|
@@ -112,12 +138,12 @@ describe Twitter::API::Lists do
|
|
112
138
|
@client.memberships(7505382)
|
113
139
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:user_id => "7505382", :cursor => "-1"})).to have_been_made
|
114
140
|
end
|
115
|
-
context "with
|
141
|
+
context "with each" do
|
116
142
|
before do
|
117
143
|
stub_get("/1.1/lists/memberships.json").with(:query => {:user_id => "7505382", :cursor => "1401037770457540712"}).to_return(:body => fixture("memberships2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
118
144
|
end
|
119
145
|
it "requests the correct resource" do
|
120
|
-
@client.memberships(7505382).
|
146
|
+
@client.memberships(7505382).each{}
|
121
147
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:user_id => "7505382", :cursor => "-1"})).to have_been_made
|
122
148
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:user_id => "7505382", :cursor => "1401037770457540712"})).to have_been_made
|
123
149
|
end
|
@@ -132,12 +158,12 @@ describe Twitter::API::Lists do
|
|
132
158
|
@client.memberships
|
133
159
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
134
160
|
end
|
135
|
-
context "with
|
161
|
+
context "with each" do
|
136
162
|
before do
|
137
163
|
stub_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"}).to_return(:body => fixture("memberships2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
138
164
|
end
|
139
165
|
it "requests the correct resource" do
|
140
|
-
@client.memberships.
|
166
|
+
@client.memberships.each{}
|
141
167
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
142
168
|
expect(a_get("/1.1/lists/memberships.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"})).to have_been_made
|
143
169
|
end
|
@@ -157,16 +183,15 @@ describe Twitter::API::Lists do
|
|
157
183
|
it "returns the subscribers of the specified list" do
|
158
184
|
list_subscribers = @client.list_subscribers("sferik", "presidents")
|
159
185
|
expect(list_subscribers).to be_a Twitter::Cursor
|
160
|
-
expect(list_subscribers.
|
161
|
-
expect(list_subscribers.
|
162
|
-
expect(list_subscribers.users.first.id).to eq 7505382
|
186
|
+
expect(list_subscribers.first).to be_a Twitter::User
|
187
|
+
expect(list_subscribers.first.id).to eq(7505382)
|
163
188
|
end
|
164
|
-
context "with
|
189
|
+
context "with each" do
|
165
190
|
before do
|
166
191
|
stub_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
167
192
|
end
|
168
193
|
it "requests the correct resource" do
|
169
|
-
@client.list_subscribers("sferik", "presidents").
|
194
|
+
@client.list_subscribers("sferik", "presidents").each{}
|
170
195
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
171
196
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
172
197
|
end
|
@@ -180,12 +205,12 @@ describe Twitter::API::Lists do
|
|
180
205
|
@client.list_subscribers(7505382, "presidents")
|
181
206
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
182
207
|
end
|
183
|
-
context "with
|
208
|
+
context "with each" do
|
184
209
|
before do
|
185
210
|
stub_get("/1.1/lists/subscribers.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
186
211
|
end
|
187
212
|
it "requests the correct resource" do
|
188
|
-
@client.list_subscribers(7505382, "presidents").
|
213
|
+
@client.list_subscribers(7505382, "presidents").each{}
|
189
214
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
190
215
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
191
216
|
end
|
@@ -200,12 +225,12 @@ describe Twitter::API::Lists do
|
|
200
225
|
@client.list_subscribers("presidents")
|
201
226
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
202
227
|
end
|
203
|
-
context "with
|
228
|
+
context "with each" do
|
204
229
|
before do
|
205
230
|
stub_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
206
231
|
end
|
207
232
|
it "requests the correct resource" do
|
208
|
-
@client.list_subscribers("presidents").
|
233
|
+
@client.list_subscribers("presidents").each{}
|
209
234
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
210
235
|
expect(a_get("/1.1/lists/subscribers.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
211
236
|
end
|
@@ -225,7 +250,7 @@ describe Twitter::API::Lists do
|
|
225
250
|
it "returns the specified list" do
|
226
251
|
list = @client.list_subscribe("sferik", "presidents")
|
227
252
|
expect(list).to be_a Twitter::List
|
228
|
-
expect(list.name).to eq
|
253
|
+
expect(list.name).to eq("presidents")
|
229
254
|
end
|
230
255
|
end
|
231
256
|
context "without a screen name passed" do
|
@@ -325,7 +350,7 @@ describe Twitter::API::Lists do
|
|
325
350
|
it "returns the specified list" do
|
326
351
|
list = @client.list_unsubscribe("sferik", "presidents")
|
327
352
|
expect(list).to be_a Twitter::List
|
328
|
-
expect(list.name).to eq
|
353
|
+
expect(list.name).to eq("presidents")
|
329
354
|
end
|
330
355
|
end
|
331
356
|
context "without a screen name passed" do
|
@@ -352,7 +377,7 @@ describe Twitter::API::Lists do
|
|
352
377
|
it "returns the list" do
|
353
378
|
list = @client.list_add_members("sferik", "presidents", [813286, 18755393])
|
354
379
|
expect(list).to be_a Twitter::List
|
355
|
-
expect(list.name).to eq
|
380
|
+
expect(list.name).to eq("presidents")
|
356
381
|
end
|
357
382
|
end
|
358
383
|
context "with a combination of member IDs and member screen names to add" do
|
@@ -461,16 +486,15 @@ describe Twitter::API::Lists do
|
|
461
486
|
it "returns the members of the specified list" do
|
462
487
|
list_members = @client.list_members("sferik", "presidents")
|
463
488
|
expect(list_members).to be_a Twitter::Cursor
|
464
|
-
expect(list_members.
|
465
|
-
expect(list_members.
|
466
|
-
expect(list_members.users.first.id).to eq 7505382
|
489
|
+
expect(list_members.first).to be_a Twitter::User
|
490
|
+
expect(list_members.first.id).to eq(7505382)
|
467
491
|
end
|
468
|
-
context "with
|
492
|
+
context "with each" do
|
469
493
|
before do
|
470
494
|
stub_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
471
495
|
end
|
472
496
|
it "requests the correct resource" do
|
473
|
-
@client.list_members("sferik", "presidents").
|
497
|
+
@client.list_members("sferik", "presidents").each{}
|
474
498
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
475
499
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
476
500
|
end
|
@@ -484,12 +508,12 @@ describe Twitter::API::Lists do
|
|
484
508
|
@client.list_members(7505382, "presidents")
|
485
509
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
486
510
|
end
|
487
|
-
context "with
|
511
|
+
context "with each" do
|
488
512
|
before do
|
489
513
|
stub_get("/1.1/lists/members.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
490
514
|
end
|
491
515
|
it "requests the correct resource" do
|
492
|
-
@client.list_members(7505382, "presidents").
|
516
|
+
@client.list_members(7505382, "presidents").each{}
|
493
517
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
494
518
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_id => "7505382", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
495
519
|
end
|
@@ -504,12 +528,12 @@ describe Twitter::API::Lists do
|
|
504
528
|
@client.list_members("presidents")
|
505
529
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
506
530
|
end
|
507
|
-
context "with
|
531
|
+
context "with each" do
|
508
532
|
before do
|
509
533
|
stub_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"}).to_return(:body => fixture("users_list2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
510
534
|
end
|
511
535
|
it "requests the correct resource" do
|
512
|
-
@client.list_members("presidents").
|
536
|
+
@client.list_members("presidents").each{}
|
513
537
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "-1"})).to have_been_made
|
514
538
|
expect(a_get("/1.1/lists/members.json").with(:query => {:owner_screen_name => "sferik", :slug => "presidents", :cursor => "1322801608223717003"})).to have_been_made
|
515
539
|
end
|
@@ -529,7 +553,7 @@ describe Twitter::API::Lists do
|
|
529
553
|
it "returns the list" do
|
530
554
|
list = @client.list_add_member("sferik", "presidents", 813286)
|
531
555
|
expect(list).to be_a Twitter::List
|
532
|
-
expect(list.name).to eq
|
556
|
+
expect(list.name).to eq("presidents")
|
533
557
|
end
|
534
558
|
end
|
535
559
|
context "without a screen name passed" do
|
@@ -556,7 +580,7 @@ describe Twitter::API::Lists do
|
|
556
580
|
it "returns the deleted list" do
|
557
581
|
list = @client.list_destroy("sferik", "presidents")
|
558
582
|
expect(list).to be_a Twitter::List
|
559
|
-
expect(list.name).to eq
|
583
|
+
expect(list.name).to eq("presidents")
|
560
584
|
end
|
561
585
|
end
|
562
586
|
context "without a screen name passed" do
|
@@ -602,7 +626,7 @@ describe Twitter::API::Lists do
|
|
602
626
|
it "returns the updated list" do
|
603
627
|
list = @client.list_update("sferik", "presidents", :description => "Presidents of the United States of America")
|
604
628
|
expect(list).to be_a Twitter::List
|
605
|
-
expect(list.name).to eq
|
629
|
+
expect(list.name).to eq("presidents")
|
606
630
|
end
|
607
631
|
end
|
608
632
|
context "without a screen name passed" do
|
@@ -647,7 +671,7 @@ describe Twitter::API::Lists do
|
|
647
671
|
it "returns the created list" do
|
648
672
|
list = @client.list_create("presidents")
|
649
673
|
expect(list).to be_a Twitter::List
|
650
|
-
expect(list.name).to eq
|
674
|
+
expect(list.name).to eq("presidents")
|
651
675
|
end
|
652
676
|
end
|
653
677
|
|
@@ -663,7 +687,7 @@ describe Twitter::API::Lists do
|
|
663
687
|
it "returns the updated list" do
|
664
688
|
list = @client.list("sferik", "presidents")
|
665
689
|
expect(list).to be_a Twitter::List
|
666
|
-
expect(list.name).to eq
|
690
|
+
expect(list.name).to eq("presidents")
|
667
691
|
end
|
668
692
|
end
|
669
693
|
context "with a user ID passed" do
|
@@ -728,16 +752,15 @@ describe Twitter::API::Lists do
|
|
728
752
|
it "returns the lists the specified user follows" do
|
729
753
|
subscriptions = @client.subscriptions("sferik")
|
730
754
|
expect(subscriptions).to be_a Twitter::Cursor
|
731
|
-
expect(subscriptions.
|
732
|
-
expect(subscriptions.
|
733
|
-
expect(subscriptions.lists.first.name).to eq "Rubyists"
|
755
|
+
expect(subscriptions.first).to be_a Twitter::List
|
756
|
+
expect(subscriptions.first.name).to eq("Rubyists")
|
734
757
|
end
|
735
|
-
context "with
|
758
|
+
context "with each" do
|
736
759
|
before do
|
737
760
|
stub_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"}).to_return(:body => fixture("subscriptions2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
738
761
|
end
|
739
762
|
it "requests the correct resource" do
|
740
|
-
@client.subscriptions("sferik").
|
763
|
+
@client.subscriptions("sferik").each{}
|
741
764
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
742
765
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"})).to have_been_made
|
743
766
|
end
|
@@ -751,12 +774,12 @@ describe Twitter::API::Lists do
|
|
751
774
|
@client.subscriptions(7505382)
|
752
775
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:user_id => "7505382", :cursor => "-1"})).to have_been_made
|
753
776
|
end
|
754
|
-
context "with
|
777
|
+
context "with each" do
|
755
778
|
before do
|
756
779
|
stub_get("/1.1/lists/subscriptions.json").with(:query => {:user_id => "7505382", :cursor => "1401037770457540712"}).to_return(:body => fixture("subscriptions2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
757
780
|
end
|
758
781
|
it "requests the correct resource" do
|
759
|
-
@client.subscriptions(7505382).
|
782
|
+
@client.subscriptions(7505382).each{}
|
760
783
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:user_id => "7505382", :cursor => "-1"})).to have_been_made
|
761
784
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:user_id => "7505382", :cursor => "1401037770457540712"})).to have_been_made
|
762
785
|
end
|
@@ -771,12 +794,12 @@ describe Twitter::API::Lists do
|
|
771
794
|
@client.subscriptions
|
772
795
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
773
796
|
end
|
774
|
-
context "with
|
797
|
+
context "with each" do
|
775
798
|
before do
|
776
799
|
stub_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"}).to_return(:body => fixture("subscriptions2.json"), :headers => {:content_type => "application/json; charset=utf-8"})
|
777
800
|
end
|
778
801
|
it "requests the correct resource" do
|
779
|
-
@client.subscriptions.
|
802
|
+
@client.subscriptions.each{}
|
780
803
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "-1"})).to have_been_made
|
781
804
|
expect(a_get("/1.1/lists/subscriptions.json").with(:query => {:screen_name => "sferik", :cursor => "1401037770457540712"})).to have_been_made
|
782
805
|
end
|
@@ -796,7 +819,7 @@ describe Twitter::API::Lists do
|
|
796
819
|
it "returns the list" do
|
797
820
|
list = @client.list_remove_members("sferik", "presidents", [813286, 18755393])
|
798
821
|
expect(list).to be_a Twitter::List
|
799
|
-
expect(list.name).to eq
|
822
|
+
expect(list.name).to eq("presidents")
|
800
823
|
end
|
801
824
|
end
|
802
825
|
context "with a user ID passed" do
|
@@ -841,9 +864,8 @@ describe Twitter::API::Lists do
|
|
841
864
|
it "returns the requested list" do
|
842
865
|
lists = @client.lists_owned("sferik")
|
843
866
|
expect(lists).to be_a Twitter::Cursor
|
844
|
-
expect(lists.
|
845
|
-
expect(lists.
|
846
|
-
expect(lists.lists.first.name).to eq "My favstar.fm list"
|
867
|
+
expect(lists.first).to be_a Twitter::List
|
868
|
+
expect(lists.first.name).to eq("My favstar.fm list")
|
847
869
|
end
|
848
870
|
end
|
849
871
|
context "without a screen name passed" do
|
@@ -858,9 +880,8 @@ describe Twitter::API::Lists do
|
|
858
880
|
it "returns the requested list" do
|
859
881
|
lists = @client.lists_owned
|
860
882
|
expect(lists).to be_a Twitter::Cursor
|
861
|
-
expect(lists.
|
862
|
-
expect(lists.
|
863
|
-
expect(lists.lists.first.name).to eq "My favstar.fm list"
|
883
|
+
expect(lists.first).to be_a Twitter::List
|
884
|
+
expect(lists.first.name).to eq("My favstar.fm list")
|
864
885
|
end
|
865
886
|
end
|
866
887
|
end
|