twitter 4.1.0 → 4.1.1
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.
- data/CHANGELOG.md +5 -0
- data/README.md +11 -9
- data/lib/twitter/api.rb +3 -5
- data/lib/twitter/base.rb +1 -4
- data/lib/twitter/geo/point.rb +2 -2
- data/lib/twitter/request/multipart_with_file.rb +1 -1
- data/lib/twitter/tweet.rb +9 -1
- data/lib/twitter/user.rb +2 -0
- data/lib/twitter/version.rb +1 -1
- data/spec/fixtures/status.json +1 -1
- data/spec/helper.rb +6 -0
- data/spec/twitter/action/favorite_spec.rb +6 -6
- data/spec/twitter/action/follow_spec.rb +6 -6
- data/spec/twitter/action/list_member_added_spec.rb +9 -9
- data/spec/twitter/action/mention_spec.rb +11 -11
- data/spec/twitter/action/reply_spec.rb +9 -9
- data/spec/twitter/action/retweet_spec.rb +9 -9
- data/spec/twitter/action_factory_spec.rb +7 -9
- data/spec/twitter/action_spec.rb +2 -2
- data/spec/twitter/api/account_spec.rb +38 -66
- data/spec/twitter/api/activity_spec.rb +6 -10
- data/spec/twitter/api/blocks_spec.rb +38 -83
- data/spec/twitter/api/direct_messages_spec.rb +33 -55
- data/spec/twitter/api/friendships_spec.rb +124 -266
- data/spec/twitter/api/geo_spec.rb +18 -36
- data/spec/twitter/api/help_spec.rb +15 -23
- data/spec/twitter/api/lists_spec.rb +172 -402
- data/spec/twitter/api/report_spam_spec.rb +5 -9
- data/spec/twitter/api/saved_searches_spec.rb +23 -35
- data/spec/twitter/api/search_spec.rb +15 -25
- data/spec/twitter/api/statuses_spec.rb +137 -235
- data/spec/twitter/api/trends_spec.rb +17 -29
- data/spec/twitter/api/users_spec.rb +90 -181
- data/spec/twitter/base_spec.rb +38 -40
- data/spec/twitter/basic_user_spec.rb +3 -3
- data/spec/twitter/client_spec.rb +28 -46
- data/spec/twitter/configuration_spec.rb +3 -3
- data/spec/twitter/cursor_spec.rb +16 -32
- data/spec/twitter/direct_message_spec.rb +9 -9
- data/spec/twitter/error/client_error_spec.rb +4 -12
- data/spec/twitter/error/server_error_spec.rb +2 -6
- data/spec/twitter/error_spec.rb +2 -2
- data/spec/twitter/geo/point_spec.rb +6 -6
- data/spec/twitter/geo/polygon_spec.rb +4 -4
- data/spec/twitter/geo_factory_spec.rb +3 -5
- data/spec/twitter/geo_spec.rb +4 -4
- data/spec/twitter/identifiable_spec.rb +9 -13
- data/spec/twitter/list_spec.rb +7 -7
- data/spec/twitter/media/photo_spec.rb +6 -6
- data/spec/twitter/media_factory_spec.rb +2 -4
- data/spec/twitter/oembed_spec.rb +24 -24
- data/spec/twitter/place_spec.rb +13 -13
- data/spec/twitter/rate_limit_spec.rb +16 -16
- data/spec/twitter/relationship_spec.rb +5 -5
- data/spec/twitter/saved_search_spec.rb +5 -5
- data/spec/twitter/search_results_spec.rb +21 -21
- data/spec/twitter/settings_spec.rb +2 -2
- data/spec/twitter/size_spec.rb +6 -6
- data/spec/twitter/source_user_spec.rb +3 -3
- data/spec/twitter/suggestion_spec.rb +9 -9
- data/spec/twitter/target_user_spec.rb +3 -3
- data/spec/twitter/trend_spec.rb +6 -6
- data/spec/twitter/tweet_spec.rb +69 -69
- data/spec/twitter/user_spec.rb +43 -43
- data/spec/twitter_spec.rb +12 -16
- metadata +2 -2
@@ -6,17 +6,17 @@ describe Twitter::TargetUser do
|
|
6
6
|
it "returns true when objects IDs are the same" do
|
7
7
|
saved_search = Twitter::TargetUser.new(:id => 1, :name => "foo")
|
8
8
|
other = Twitter::TargetUser.new(:id => 1, :name => "bar")
|
9
|
-
(saved_search == other).
|
9
|
+
expect(saved_search == other).to be_true
|
10
10
|
end
|
11
11
|
it "returns false when objects IDs are different" do
|
12
12
|
saved_search = Twitter::TargetUser.new(:id => 1)
|
13
13
|
other = Twitter::TargetUser.new(:id => 2)
|
14
|
-
(saved_search == other).
|
14
|
+
expect(saved_search == other).to be_false
|
15
15
|
end
|
16
16
|
it "returns false when classes are different" do
|
17
17
|
saved_search = Twitter::TargetUser.new(:id => 1)
|
18
18
|
other = Twitter::Identity.new(:id => 1)
|
19
|
-
(saved_search == other).
|
19
|
+
expect(saved_search == other).to be_false
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
data/spec/twitter/trend_spec.rb
CHANGED
@@ -6,32 +6,32 @@ describe Twitter::Trend do
|
|
6
6
|
it "returns false for empty objects" do
|
7
7
|
trend = Twitter::Trend.new
|
8
8
|
other = Twitter::Trend.new
|
9
|
-
(trend == other).
|
9
|
+
expect(trend == other).to be_false
|
10
10
|
end
|
11
11
|
it "returns true when objects names are the same" do
|
12
12
|
trend = Twitter::Trend.new(:name => "#sevenwordsaftersex", :query => "foo")
|
13
13
|
other = Twitter::Trend.new(:name => "#sevenwordsaftersex", :query => "bar")
|
14
|
-
(trend == other).
|
14
|
+
expect(trend == other).to be_true
|
15
15
|
end
|
16
16
|
it "returns false when objects names are different" do
|
17
17
|
trend = Twitter::Trend.new(:name => "#sevenwordsaftersex")
|
18
18
|
other = Twitter::Trend.new(:name => "#sixwordsaftersex")
|
19
|
-
(trend == other).
|
19
|
+
expect(trend == other).to be_false
|
20
20
|
end
|
21
21
|
it "returns false when classes are different" do
|
22
22
|
trend = Twitter::Trend.new(:name => "#sevenwordsaftersex")
|
23
23
|
other = Twitter::Base.new(:name => "#sevenwordsaftersex")
|
24
|
-
(trend == other).
|
24
|
+
expect(trend == other).to be_false
|
25
25
|
end
|
26
26
|
it "returns true when objects non-name attributes are the same" do
|
27
27
|
trend = Twitter::Trend.new(:query => "foo")
|
28
28
|
other = Twitter::Trend.new(:query => "foo")
|
29
|
-
(trend == other).
|
29
|
+
expect(trend == other).to be_true
|
30
30
|
end
|
31
31
|
it "returns false when objects non-name attributes are different" do
|
32
32
|
trend = Twitter::Trend.new(:query => "foo")
|
33
33
|
other = Twitter::Trend.new(:query => "bar")
|
34
|
-
(trend == other).
|
34
|
+
expect(trend == other).to be_false
|
35
35
|
end
|
36
36
|
end
|
37
37
|
|
data/spec/twitter/tweet_spec.rb
CHANGED
@@ -15,90 +15,90 @@ describe Twitter::Tweet do
|
|
15
15
|
it "returns true when objects IDs are the same" do
|
16
16
|
tweet = Twitter::Tweet.new(:id => 1, :text => "foo")
|
17
17
|
other = Twitter::Tweet.new(:id => 1, :text => "bar")
|
18
|
-
(tweet == other).
|
18
|
+
expect(tweet == other).to be_true
|
19
19
|
end
|
20
20
|
it "returns false when objects IDs are different" do
|
21
21
|
tweet = Twitter::Tweet.new(:id => 1)
|
22
22
|
other = Twitter::Tweet.new(:id => 2)
|
23
|
-
(tweet == other).
|
23
|
+
expect(tweet == other).to be_false
|
24
24
|
end
|
25
25
|
it "returns false when classes are different" do
|
26
26
|
tweet = Twitter::Tweet.new(:id => 1)
|
27
27
|
other = Twitter::Identity.new(:id => 1)
|
28
|
-
(tweet == other).
|
28
|
+
expect(tweet == other).to be_false
|
29
29
|
end
|
30
30
|
end
|
31
31
|
|
32
32
|
describe "#created_at" do
|
33
33
|
it "returns a Time when set" do
|
34
34
|
tweet = Twitter::Tweet.new(:id => 28669546014, :created_at => "Mon Jul 16 12:59:01 +0000 2007")
|
35
|
-
tweet.created_at.
|
35
|
+
expect(tweet.created_at).to be_a Time
|
36
36
|
end
|
37
37
|
it "returns nil when not set" do
|
38
38
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
39
|
-
tweet.created_at.
|
39
|
+
expect(tweet.created_at).to be_nil
|
40
40
|
end
|
41
41
|
end
|
42
42
|
|
43
43
|
describe "#favoriters_count" do
|
44
44
|
it "returns the count of favoriters when favoriters_count is set" do
|
45
45
|
tweet = Twitter::Tweet.new(:id => 28669546014, :favoriters_count => '1')
|
46
|
-
tweet.favoriters_count.
|
47
|
-
tweet.favoriters_count.
|
46
|
+
expect(tweet.favoriters_count).to be_an Integer
|
47
|
+
expect(tweet.favoriters_count).to eq 1
|
48
48
|
end
|
49
49
|
it "returns nil when not set" do
|
50
50
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
51
|
-
tweet.favoriters_count.
|
51
|
+
expect(tweet.favoriters_count).to be_nil
|
52
52
|
end
|
53
53
|
end
|
54
54
|
|
55
55
|
describe "#from_user" do
|
56
56
|
it "returns a screen name when from_user is set" do
|
57
57
|
tweet = Twitter::Tweet.new(:id => 28669546014, :from_user => 'sferik')
|
58
|
-
tweet.from_user.
|
59
|
-
tweet.from_user.
|
58
|
+
expect(tweet.from_user).to be_a String
|
59
|
+
expect(tweet.from_user).to eq "sferik"
|
60
60
|
end
|
61
61
|
it "returns a screen name when screen_name is set" do
|
62
62
|
tweet = Twitter::Tweet.new(:id => 28669546014, :user => {:id => 7505382, :screen_name => 'sferik'})
|
63
|
-
tweet.from_user.
|
64
|
-
tweet.from_user.
|
63
|
+
expect(tweet.from_user).to be_a String
|
64
|
+
expect(tweet.from_user).to eq "sferik"
|
65
65
|
end
|
66
66
|
it "returns nil when not set" do
|
67
67
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
68
|
-
tweet.from_user.
|
68
|
+
expect(tweet.from_user).to be_nil
|
69
69
|
end
|
70
70
|
end
|
71
71
|
|
72
72
|
describe "#full_text" do
|
73
73
|
it "returns the text of a Tweet" do
|
74
74
|
tweet = Twitter::Tweet.new(:id => 28669546014, :text => 'BOOSH')
|
75
|
-
tweet.full_text.
|
76
|
-
tweet.full_text.
|
75
|
+
expect(tweet.full_text).to be_a String
|
76
|
+
expect(tweet.full_text).to eq "BOOSH"
|
77
77
|
end
|
78
78
|
it "returns the text of a Tweet without a user" do
|
79
79
|
tweet = Twitter::Tweet.new(:id => 28669546014, :text => 'BOOSH', :retweeted_status => {:id => 28561922517, :text => 'BOOSH'})
|
80
|
-
tweet.full_text.
|
81
|
-
tweet.full_text.
|
80
|
+
expect(tweet.full_text).to be_a String
|
81
|
+
expect(tweet.full_text).to eq "BOOSH"
|
82
82
|
end
|
83
83
|
it "returns the full text of a retweeted Tweet" do
|
84
|
-
tweet = Twitter::Tweet.new(:id => 28669546014, :
|
85
|
-
tweet.full_text.
|
86
|
-
tweet.full_text.
|
84
|
+
tweet = Twitter::Tweet.new(:id => 28669546014, :text => 'RT @sferik: BOOSH', :retweeted_status => {:id => 28561922516, :text => 'BOOSH'})
|
85
|
+
expect(tweet.full_text).to be_a String
|
86
|
+
expect(tweet.full_text).to eq "RT @sferik: BOOSH"
|
87
87
|
end
|
88
88
|
it "returns nil when retweeted_status is not set" do
|
89
89
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
90
|
-
tweet.full_text.
|
90
|
+
expect(tweet.full_text).to be_nil
|
91
91
|
end
|
92
92
|
end
|
93
93
|
|
94
94
|
describe "#geo" do
|
95
95
|
it "returns a Twitter::Geo::Point when set" do
|
96
96
|
tweet = Twitter::Tweet.new(:id => 28669546014, :geo => {:id => 1, :type => 'Point'})
|
97
|
-
tweet.geo.
|
97
|
+
expect(tweet.geo).to be_a Twitter::Geo::Point
|
98
98
|
end
|
99
99
|
it "returns nil when not set" do
|
100
100
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
101
|
-
tweet.geo.
|
101
|
+
expect(tweet.geo).to be_nil
|
102
102
|
end
|
103
103
|
end
|
104
104
|
|
@@ -111,126 +111,126 @@ describe Twitter::Tweet do
|
|
111
111
|
}
|
112
112
|
]
|
113
113
|
hashtags = Twitter::Tweet.new(:id => 28669546014, :entities => {:hashtags => hashtags_hash}).hashtags
|
114
|
-
hashtags.
|
115
|
-
hashtags.first.
|
116
|
-
hashtags.first.indices.
|
117
|
-
hashtags.first.text.
|
114
|
+
expect(hashtags).to be_an Array
|
115
|
+
expect(hashtags.first).to be_a Twitter::Entity::Hashtag
|
116
|
+
expect(hashtags.first.indices).to eq [10, 33]
|
117
|
+
expect(hashtags.first.text).to eq 'twitter'
|
118
118
|
end
|
119
119
|
it "is empty when not set" do
|
120
120
|
hashtags = Twitter::Tweet.new(:id => 28669546014).hashtags
|
121
|
-
hashtags.
|
121
|
+
expect(hashtags).to be_empty
|
122
122
|
end
|
123
123
|
it "warns when not set" do
|
124
124
|
Twitter::Tweet.new(:id => 28669546014).hashtags
|
125
|
-
$stderr.string.
|
125
|
+
expect($stderr.string).to match /To get hashtags, you must pass `:include_entities => true` when requesting the Twitter::Tweet\./
|
126
126
|
end
|
127
127
|
end
|
128
128
|
|
129
129
|
describe "#media" do
|
130
130
|
it "returns media" do
|
131
131
|
media = Twitter::Tweet.new(:id => 28669546014, :entities => {:media => [{:id => 1, :type => 'photo'}]}).media
|
132
|
-
media.
|
133
|
-
media.first.
|
132
|
+
expect(media).to be_an Array
|
133
|
+
expect(media.first).to be_a Twitter::Media::Photo
|
134
134
|
end
|
135
135
|
it "is empty when not set" do
|
136
136
|
media = Twitter::Tweet.new(:id => 28669546014).media
|
137
|
-
media.
|
137
|
+
expect(media).to be_empty
|
138
138
|
end
|
139
139
|
it "warns when not set" do
|
140
140
|
Twitter::Tweet.new(:id => 28669546014).media
|
141
|
-
$stderr.string.
|
141
|
+
expect($stderr.string).to match /To get media, you must pass `:include_entities => true` when requesting the Twitter::Tweet\./
|
142
142
|
end
|
143
143
|
end
|
144
144
|
|
145
145
|
describe "#metadata" do
|
146
146
|
it "returns a User when user is set" do
|
147
147
|
metadata = Twitter::Tweet.new(:id => 28669546014, :metadata => {}).metadata
|
148
|
-
metadata.
|
148
|
+
expect(metadata).to be_a Twitter::Metadata
|
149
149
|
end
|
150
150
|
it "returns nil when user is not set" do
|
151
151
|
metadata = Twitter::Tweet.new(:id => 28669546014).metadata
|
152
|
-
metadata.
|
152
|
+
expect(metadata).to be_nil
|
153
153
|
end
|
154
154
|
end
|
155
155
|
|
156
156
|
describe "#place" do
|
157
157
|
it "returns a Twitter::Place when set" do
|
158
158
|
tweet = Twitter::Tweet.new(:id => 28669546014, :place => {:id => "247f43d441defc03"})
|
159
|
-
tweet.place.
|
159
|
+
expect(tweet.place).to be_a Twitter::Place
|
160
160
|
end
|
161
161
|
it "returns nil when not set" do
|
162
162
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
163
|
-
tweet.place.
|
163
|
+
expect(tweet.place).to be_nil
|
164
164
|
end
|
165
165
|
end
|
166
166
|
|
167
167
|
describe "#repliers_count" do
|
168
168
|
it "returns the count of favoriters when repliers_count is set" do
|
169
169
|
tweet = Twitter::Tweet.new(:id => 28669546014, :repliers_count => '1')
|
170
|
-
tweet.repliers_count.
|
171
|
-
tweet.repliers_count.
|
170
|
+
expect(tweet.repliers_count).to be_an Integer
|
171
|
+
expect(tweet.repliers_count).to eq 1
|
172
172
|
end
|
173
173
|
it "returns nil when not set" do
|
174
174
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
175
|
-
tweet.repliers_count.
|
175
|
+
expect(tweet.repliers_count).to be_nil
|
176
176
|
end
|
177
177
|
end
|
178
178
|
|
179
179
|
describe "#reply?" do
|
180
180
|
it "returns true when there is an in-reply-to status" do
|
181
181
|
tweet = Twitter::Tweet.new(:id => 28669546014, :in_reply_to_status_id => 114749583439036416)
|
182
|
-
tweet.reply
|
182
|
+
expect(tweet.reply?).to be_true
|
183
183
|
end
|
184
184
|
it "returns false when in_reply_to_status_id is not set" do
|
185
185
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
186
|
-
tweet.reply
|
186
|
+
expect(tweet.reply?).to be_false
|
187
187
|
end
|
188
188
|
end
|
189
189
|
|
190
190
|
describe "#retweet?" do
|
191
191
|
it "returns true when there is a retweeted status" do
|
192
192
|
tweet = Twitter::Tweet.new(:id => 28669546014, :retweeted_status => {:id => 28561922516, :text => 'BOOSH'})
|
193
|
-
tweet.retweet
|
193
|
+
expect(tweet.retweet?).to be_true
|
194
194
|
end
|
195
195
|
it "returns false when retweeted_status is not set" do
|
196
196
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
197
|
-
tweet.retweet
|
197
|
+
expect(tweet.retweet?).to be_false
|
198
198
|
end
|
199
199
|
end
|
200
200
|
|
201
201
|
describe "#retweeted_status" do
|
202
202
|
it "has text when retweeted_status is set" do
|
203
203
|
tweet = Twitter::Tweet.new(:id => 28669546014, :retweeted_status => {:id => 28561922516, :text => 'BOOSH'})
|
204
|
-
tweet.retweeted_tweet.
|
205
|
-
tweet.retweeted_tweet.text.
|
204
|
+
expect(tweet.retweeted_tweet).to be_a Twitter::Tweet
|
205
|
+
expect(tweet.retweeted_tweet.text).to eq 'BOOSH'
|
206
206
|
end
|
207
207
|
it "returns nil when retweeted_status is not set" do
|
208
208
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
209
|
-
tweet.retweeted_tweet.
|
209
|
+
expect(tweet.retweeted_tweet).to be_nil
|
210
210
|
end
|
211
211
|
end
|
212
212
|
|
213
213
|
describe "#retweeters_count" do
|
214
214
|
it "returns the count of favoriters when retweet_count is set" do
|
215
215
|
tweet = Twitter::Tweet.new(:id => 28669546014, :retweet_count => '1')
|
216
|
-
tweet.retweeters_count.
|
217
|
-
tweet.retweeters_count.
|
216
|
+
expect(tweet.retweeters_count).to be_an Integer
|
217
|
+
expect(tweet.retweeters_count).to eq 1
|
218
218
|
end
|
219
219
|
it "returns the count of favoriters when retweeters_count is set" do
|
220
220
|
tweet = Twitter::Tweet.new(:id => 28669546014, :retweeters_count => '1')
|
221
|
-
tweet.retweeters_count.
|
222
|
-
tweet.retweeters_count.
|
221
|
+
expect(tweet.retweeters_count).to be_an Integer
|
222
|
+
expect(tweet.retweeters_count).to eq 1
|
223
223
|
end
|
224
224
|
it "returns nil when not set" do
|
225
225
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
226
|
-
tweet.retweeters_count.
|
226
|
+
expect(tweet.retweeters_count).to be_nil
|
227
227
|
end
|
228
228
|
end
|
229
229
|
|
230
230
|
describe "#entities?" do
|
231
231
|
it "returns false if there are no entities set" do
|
232
232
|
tweet = Twitter::Tweet.new(:id => 28669546014)
|
233
|
-
tweet.entities
|
233
|
+
expect(tweet.entities?).to be_false
|
234
234
|
end
|
235
235
|
|
236
236
|
it "returns true if there are entities set" do
|
@@ -243,7 +243,7 @@ describe Twitter::Tweet do
|
|
243
243
|
}
|
244
244
|
]
|
245
245
|
tweet = Twitter::Tweet.new(:id => 28669546014, :entities => {:urls => urls_hash})
|
246
|
-
tweet.entities
|
246
|
+
expect(tweet.entities?).to be_true
|
247
247
|
end
|
248
248
|
end
|
249
249
|
|
@@ -258,33 +258,33 @@ describe Twitter::Tweet do
|
|
258
258
|
}
|
259
259
|
]
|
260
260
|
urls = Twitter::Tweet.new(:id => 28669546014, :entities => {:urls => urls_hash}).urls
|
261
|
-
urls.
|
262
|
-
urls.first.
|
263
|
-
urls.first.indices.
|
264
|
-
urls.first.display_url.
|
261
|
+
expect(urls).to be_an Array
|
262
|
+
expect(urls.first).to be_a Twitter::Entity::Url
|
263
|
+
expect(urls.first.indices).to eq [10, 33]
|
264
|
+
expect(urls.first.display_url).to eq 'example.com/expanded'
|
265
265
|
end
|
266
266
|
it "is empty when not set" do
|
267
267
|
urls = Twitter::Tweet.new(:id => 28669546014).urls
|
268
|
-
urls.
|
268
|
+
expect(urls).to be_empty
|
269
269
|
end
|
270
270
|
it "warns when not set" do
|
271
271
|
Twitter::Tweet.new(:id => 28669546014).urls
|
272
|
-
$stderr.string.
|
272
|
+
expect($stderr.string).to match /To get urls, you must pass `:include_entities => true` when requesting the Twitter::Tweet\./
|
273
273
|
end
|
274
274
|
end
|
275
275
|
|
276
276
|
describe "#user" do
|
277
277
|
it "returns a User when user is set" do
|
278
278
|
user = Twitter::Tweet.new(:id => 28669546014, :user => {:id => 7505382}).user
|
279
|
-
user.
|
279
|
+
expect(user).to be_a Twitter::User
|
280
280
|
end
|
281
281
|
it "returns nil when user is not set" do
|
282
282
|
user = Twitter::Tweet.new(:id => 28669546014).user
|
283
|
-
user.
|
283
|
+
expect(user).to be_nil
|
284
284
|
end
|
285
285
|
it "has a status when status is set" do
|
286
286
|
user = Twitter::Tweet.new(:id => 28669546014, :text => 'Tweet text.', :user => {:id => 7505382}).user
|
287
|
-
user.status.
|
287
|
+
expect(user.status).to be_a Twitter::Tweet
|
288
288
|
end
|
289
289
|
end
|
290
290
|
|
@@ -300,18 +300,18 @@ describe Twitter::Tweet do
|
|
300
300
|
}
|
301
301
|
]
|
302
302
|
user_mentions = Twitter::Tweet.new(:id => 28669546014, :entities => {:user_mentions => user_mentions_hash}).user_mentions
|
303
|
-
user_mentions.
|
304
|
-
user_mentions.first.
|
305
|
-
user_mentions.first.indices.
|
306
|
-
user_mentions.first.id.
|
303
|
+
expect(user_mentions).to be_an Array
|
304
|
+
expect(user_mentions.first).to be_a Twitter::Entity::UserMention
|
305
|
+
expect(user_mentions.first.indices).to eq [0, 6]
|
306
|
+
expect(user_mentions.first.id).to eq 7505382
|
307
307
|
end
|
308
308
|
it "is empty when not set" do
|
309
309
|
user_mentions = Twitter::Tweet.new(:id => 28669546014).user_mentions
|
310
|
-
user_mentions.
|
310
|
+
expect(user_mentions).to be_empty
|
311
311
|
end
|
312
312
|
it "warns when not set" do
|
313
313
|
Twitter::Tweet.new(:id => 28669546014).user_mentions
|
314
|
-
$stderr.string.
|
314
|
+
expect($stderr.string).to match /To get user mentions, you must pass `:include_entities => true` when requesting the Twitter::Tweet\./
|
315
315
|
end
|
316
316
|
end
|
317
317
|
|
data/spec/twitter/user_spec.rb
CHANGED
@@ -6,72 +6,72 @@ describe Twitter::User do
|
|
6
6
|
it "returns true when objects IDs are the same" do
|
7
7
|
user = Twitter::User.new(:id => 1, :screen_name => "foo")
|
8
8
|
other = Twitter::User.new(:id => 1, :screen_name => "bar")
|
9
|
-
(user == other).
|
9
|
+
expect(user == other).to be_true
|
10
10
|
end
|
11
11
|
it "returns false when objects IDs are different" do
|
12
12
|
user = Twitter::User.new(:id => 1)
|
13
13
|
other = Twitter::User.new(:id => 2)
|
14
|
-
(user == other).
|
14
|
+
expect(user == other).to be_false
|
15
15
|
end
|
16
16
|
it "returns false when classes are different" do
|
17
17
|
user = Twitter::User.new(:id => 1)
|
18
18
|
other = Twitter::Identity.new(:id => 1)
|
19
|
-
(user == other).
|
19
|
+
expect(user == other).to be_false
|
20
20
|
end
|
21
21
|
end
|
22
22
|
|
23
23
|
describe "#created_at" do
|
24
24
|
it "returns a Time when created_at is set" do
|
25
25
|
user = Twitter::User.new(:id => 7505382, :created_at => "Mon Jul 16 12:59:01 +0000 2007")
|
26
|
-
user.created_at.
|
26
|
+
expect(user.created_at).to be_a Time
|
27
27
|
end
|
28
28
|
it "returns nil when created_at is not set" do
|
29
29
|
user = Twitter::User.new(:id => 7505382)
|
30
|
-
user.created_at.
|
30
|
+
expect(user.created_at).to be_nil
|
31
31
|
end
|
32
32
|
end
|
33
33
|
|
34
34
|
describe "#profile_banner_url" do
|
35
35
|
it "returns a String when profile_banner_url is set" do
|
36
36
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
37
|
-
user.profile_banner_url.
|
37
|
+
expect(user.profile_banner_url).to be_a String
|
38
38
|
end
|
39
39
|
it "returns nil when created_at is not set" do
|
40
40
|
user = Twitter::User.new(:id => 7505382)
|
41
|
-
user.profile_banner_url.
|
41
|
+
expect(user.profile_banner_url).to be_nil
|
42
42
|
end
|
43
43
|
it "returns the web-sized image" do
|
44
44
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
45
|
-
user.profile_banner_url.
|
45
|
+
expect(user.profile_banner_url).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/web"
|
46
46
|
end
|
47
47
|
context "with :web_retina passed" do
|
48
48
|
it "returns the web retina-sized image" do
|
49
49
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
50
|
-
user.profile_banner_url(:web_retina).
|
50
|
+
expect(user.profile_banner_url(:web_retina)).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/web_retina"
|
51
51
|
end
|
52
52
|
end
|
53
53
|
context "with :mobile passed" do
|
54
54
|
it "returns the mobile-sized image" do
|
55
55
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
56
|
-
user.profile_banner_url(:mobile).
|
56
|
+
expect(user.profile_banner_url(:mobile)).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/mobile"
|
57
57
|
end
|
58
58
|
end
|
59
59
|
context "with :mobile_retina passed" do
|
60
60
|
it "returns the mobile retina-sized image" do
|
61
61
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
62
|
-
user.profile_banner_url(:mobile_retina).
|
62
|
+
expect(user.profile_banner_url(:mobile_retina)).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/mobile_retina"
|
63
63
|
end
|
64
64
|
end
|
65
65
|
context "with :ipad passed" do
|
66
66
|
it "returns the mobile-sized image" do
|
67
67
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
68
|
-
user.profile_banner_url(:ipad).
|
68
|
+
expect(user.profile_banner_url(:ipad)).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/ipad"
|
69
69
|
end
|
70
70
|
end
|
71
71
|
context "with :ipad_retina passed" do
|
72
72
|
it "returns the mobile retina-sized image" do
|
73
73
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
74
|
-
user.profile_banner_url(:ipad_retina).
|
74
|
+
expect(user.profile_banner_url(:ipad_retina)).to eq "http://si0.twimg.com/profile_banners/7505382/1348266581/ipad_retina"
|
75
75
|
end
|
76
76
|
end
|
77
77
|
end
|
@@ -79,44 +79,44 @@ describe Twitter::User do
|
|
79
79
|
describe "#profile_banner_url_https" do
|
80
80
|
it "returns a String when profile_banner_url is set" do
|
81
81
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
82
|
-
user.profile_banner_url_https.
|
82
|
+
expect(user.profile_banner_url_https).to be_a String
|
83
83
|
end
|
84
84
|
it "returns nil when created_at is not set" do
|
85
85
|
user = Twitter::User.new(:id => 7505382)
|
86
|
-
user.profile_banner_url_https.
|
86
|
+
expect(user.profile_banner_url_https).to be_nil
|
87
87
|
end
|
88
88
|
it "returns the web-sized image" do
|
89
89
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
90
|
-
user.profile_banner_url_https.
|
90
|
+
expect(user.profile_banner_url_https).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/web"
|
91
91
|
end
|
92
92
|
context "with :web_retina passed" do
|
93
93
|
it "returns the web retina-sized image" do
|
94
94
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
95
|
-
user.profile_banner_url_https(:web_retina).
|
95
|
+
expect(user.profile_banner_url_https(:web_retina)).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/web_retina"
|
96
96
|
end
|
97
97
|
end
|
98
98
|
context "with :mobile passed" do
|
99
99
|
it "returns the mobile-sized image" do
|
100
100
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
101
|
-
user.profile_banner_url_https(:mobile).
|
101
|
+
expect(user.profile_banner_url_https(:mobile)).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/mobile"
|
102
102
|
end
|
103
103
|
end
|
104
104
|
context "with :mobile_retina passed" do
|
105
105
|
it "returns the mobile retina-sized image" do
|
106
106
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
107
|
-
user.profile_banner_url_https(:mobile_retina).
|
107
|
+
expect(user.profile_banner_url_https(:mobile_retina)).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/mobile_retina"
|
108
108
|
end
|
109
109
|
end
|
110
110
|
context "with :ipad passed" do
|
111
111
|
it "returns the mobile-sized image" do
|
112
112
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
113
|
-
user.profile_banner_url_https(:ipad).
|
113
|
+
expect(user.profile_banner_url_https(:ipad)).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/ipad"
|
114
114
|
end
|
115
115
|
end
|
116
116
|
context "with :ipad_retina passed" do
|
117
117
|
it "returns the mobile retina-sized image" do
|
118
118
|
user = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581")
|
119
|
-
user.profile_banner_url_https(:ipad_retina).
|
119
|
+
expect(user.profile_banner_url_https(:ipad_retina)).to eq "https://si0.twimg.com/profile_banners/7505382/1348266581/ipad_retina"
|
120
120
|
end
|
121
121
|
end
|
122
122
|
end
|
@@ -124,43 +124,43 @@ describe Twitter::User do
|
|
124
124
|
describe "#profile_banner_url?" do
|
125
125
|
it "returns true when profile_banner_url is set" do
|
126
126
|
profile_banner_url = Twitter::User.new(:id => 7505382, :profile_banner_url => "https://si0.twimg.com/profile_banners/7505382/1348266581").profile_banner_url?
|
127
|
-
profile_banner_url.
|
127
|
+
expect(profile_banner_url).to be_true
|
128
128
|
end
|
129
129
|
it "returns false when status is not set" do
|
130
130
|
profile_banner_url = Twitter::User.new(:id => 7505382).profile_banner_url?
|
131
|
-
profile_banner_url.
|
131
|
+
expect(profile_banner_url).to be_false
|
132
132
|
end
|
133
133
|
end
|
134
134
|
|
135
135
|
describe "#profile_image_url" do
|
136
136
|
it "returns a String when profile_image_url_https is set" do
|
137
137
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
138
|
-
user.profile_image_url.
|
138
|
+
expect(user.profile_image_url).to be_a String
|
139
139
|
end
|
140
140
|
it "returns nil when created_at is not set" do
|
141
141
|
user = Twitter::User.new(:id => 7505382)
|
142
|
-
user.profile_image_url.
|
142
|
+
expect(user.profile_image_url).to be_nil
|
143
143
|
end
|
144
144
|
it "returns the normal-sized image" do
|
145
145
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
146
|
-
user.profile_image_url.
|
146
|
+
expect(user.profile_image_url).to eq "http://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png"
|
147
147
|
end
|
148
148
|
context "with :original passed" do
|
149
149
|
it "returns the original image" do
|
150
150
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
151
|
-
user.profile_image_url(:original).
|
151
|
+
expect(user.profile_image_url(:original)).to eq "http://a0.twimg.com/profile_images/1759857427/image1326743606.png"
|
152
152
|
end
|
153
153
|
end
|
154
154
|
context "with :bigger passed" do
|
155
155
|
it "returns the bigger-sized image" do
|
156
156
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
157
|
-
user.profile_image_url(:bigger).
|
157
|
+
expect(user.profile_image_url(:bigger)).to eq "http://a0.twimg.com/profile_images/1759857427/image1326743606_bigger.png"
|
158
158
|
end
|
159
159
|
end
|
160
160
|
context "with :mini passed" do
|
161
161
|
it "returns the mini-sized image" do
|
162
162
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
163
|
-
user.profile_image_url(:mini).
|
163
|
+
expect(user.profile_image_url(:mini)).to eq "http://a0.twimg.com/profile_images/1759857427/image1326743606_mini.png"
|
164
164
|
end
|
165
165
|
end
|
166
166
|
end
|
@@ -168,32 +168,32 @@ describe Twitter::User do
|
|
168
168
|
describe "#profile_image_url_https" do
|
169
169
|
it "returns a String when profile_image_url_https is set" do
|
170
170
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
171
|
-
user.profile_image_url_https.
|
171
|
+
expect(user.profile_image_url_https).to be_a String
|
172
172
|
end
|
173
173
|
it "returns nil when created_at is not set" do
|
174
174
|
user = Twitter::User.new(:id => 7505382)
|
175
|
-
user.profile_image_url_https.
|
175
|
+
expect(user.profile_image_url_https).to be_nil
|
176
176
|
end
|
177
177
|
it "returns the normal-sized image" do
|
178
178
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
179
|
-
user.profile_image_url_https.
|
179
|
+
expect(user.profile_image_url_https).to eq "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png"
|
180
180
|
end
|
181
181
|
context "with :original passed" do
|
182
182
|
it "returns the original image" do
|
183
183
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
184
|
-
user.profile_image_url_https(:original).
|
184
|
+
expect(user.profile_image_url_https(:original)).to eq "https://a0.twimg.com/profile_images/1759857427/image1326743606.png"
|
185
185
|
end
|
186
186
|
end
|
187
187
|
context "with :bigger passed" do
|
188
188
|
it "returns the bigger-sized image" do
|
189
189
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
190
|
-
user.profile_image_url_https(:bigger).
|
190
|
+
expect(user.profile_image_url_https(:bigger)).to eq "https://a0.twimg.com/profile_images/1759857427/image1326743606_bigger.png"
|
191
191
|
end
|
192
192
|
end
|
193
193
|
context "with :mini passed" do
|
194
194
|
it "returns the mini-sized image" do
|
195
195
|
user = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://a0.twimg.com/profile_images/1759857427/image1326743606_normal.png")
|
196
|
-
user.profile_image_url_https(:mini).
|
196
|
+
expect(user.profile_image_url_https(:mini)).to eq "https://a0.twimg.com/profile_images/1759857427/image1326743606_mini.png"
|
197
197
|
end
|
198
198
|
end
|
199
199
|
end
|
@@ -201,38 +201,38 @@ describe Twitter::User do
|
|
201
201
|
describe "#profile_image_url?" do
|
202
202
|
it "returns true when profile_banner_url is set" do
|
203
203
|
profile_image_url = Twitter::User.new(:id => 7505382, :profile_image_url_https => "https://si0.twimg.com/profile_banners/7505382/1348266581").profile_image_url?
|
204
|
-
profile_image_url.
|
204
|
+
expect(profile_image_url).to be_true
|
205
205
|
end
|
206
206
|
it "returns false when status is not set" do
|
207
207
|
profile_image_url= Twitter::User.new(:id => 7505382).profile_image_url?
|
208
|
-
profile_image_url.
|
208
|
+
expect(profile_image_url).to be_false
|
209
209
|
end
|
210
210
|
end
|
211
211
|
|
212
212
|
describe "#status" do
|
213
213
|
it "returns a Status when status is set" do
|
214
214
|
tweet = Twitter::User.new(:id => 7505382, :status => {:id => 25938088801}).status
|
215
|
-
tweet.
|
215
|
+
expect(tweet).to be_a Twitter::Tweet
|
216
216
|
end
|
217
217
|
it "returns nil when status is not set" do
|
218
218
|
tweet = Twitter::User.new(:id => 7505382).status
|
219
|
-
tweet.
|
219
|
+
expect(tweet).to be_nil
|
220
220
|
end
|
221
221
|
it "includes a User when user is set" do
|
222
222
|
tweet = Twitter::User.new(:id => 7505382, :screen_name => 'sferik', :status => {:id => 25938088801}).status
|
223
|
-
tweet.user.
|
224
|
-
tweet.user.id.
|
223
|
+
expect(tweet.user).to be_a Twitter::User
|
224
|
+
expect(tweet.user.id).to eq 7505382
|
225
225
|
end
|
226
226
|
end
|
227
227
|
|
228
228
|
describe "#status?" do
|
229
229
|
it "returns true when status is set" do
|
230
230
|
tweet = Twitter::User.new(:id => 7505382, :status => {:id => 25938088801}).status?
|
231
|
-
tweet.
|
231
|
+
expect(tweet).to be_true
|
232
232
|
end
|
233
233
|
it "returns false when status is not set" do
|
234
234
|
tweet = Twitter::User.new(:id => 7505382).status?
|
235
|
-
tweet.
|
235
|
+
expect(tweet).to be_false
|
236
236
|
end
|
237
237
|
end
|
238
238
|
|