twitter-text 1.14.7 → 2.0.0

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.
@@ -0,0 +1,18 @@
1
+ # encoding: UTF-8
2
+
3
+ module Twitter
4
+ class WeightedRange
5
+ attr_reader :start, :end, :weight
6
+
7
+ def initialize(range = {})
8
+ raise ArgumentError.new("Invalid range") unless [:start, :end, :weight].all? { |key| range.key?(key) && range[key].is_a?(Integer) }
9
+ @start = range[:start]
10
+ @end = range[:end]
11
+ @weight = range[:weight]
12
+ end
13
+
14
+ def contains?(code_point)
15
+ code_point >= @start && code_point <= @end
16
+ end
17
+ end
18
+ end
@@ -19,7 +19,7 @@ describe Twitter::Autolink do
19
19
  def original_text; "hello @jacob"; end
20
20
 
21
21
  it "should be linked" do
22
- @autolinked_text.should link_to_screen_name('jacob')
22
+ expect(@autolinked_text).to link_to_screen_name('jacob')
23
23
  end
24
24
  end
25
25
 
@@ -27,7 +27,7 @@ describe Twitter::Autolink do
27
27
  def original_text() "@jaCob iS cOoL" end
28
28
 
29
29
  it "should be linked" do
30
- @autolinked_text.should link_to_screen_name('jaCob')
30
+ expect(@autolinked_text).to link_to_screen_name('jaCob')
31
31
  end
32
32
  end
33
33
 
@@ -35,7 +35,7 @@ describe Twitter::Autolink do
35
35
  def original_text; "@jacob you're cool"; end
36
36
 
37
37
  it "should be linked" do
38
- @autolinked_text.should link_to_screen_name('jacob')
38
+ expect(@autolinked_text).to link_to_screen_name('jacob')
39
39
  end
40
40
  end
41
41
 
@@ -43,7 +43,7 @@ describe Twitter::Autolink do
43
43
  def original_text; "meet@the beach"; end
44
44
 
45
45
  it "should not be linked" do
46
- Nokogiri::HTML(@autolinked_text).search('a').should be_empty
46
+ expect(Nokogiri::HTML(@autolinked_text).search('a')).to be_empty
47
47
  end
48
48
  end
49
49
 
@@ -51,7 +51,7 @@ describe Twitter::Autolink do
51
51
  def original_text; "great.@jacob"; end
52
52
 
53
53
  it "should be linked" do
54
- @autolinked_text.should link_to_screen_name('jacob')
54
+ expect(@autolinked_text).to link_to_screen_name('jacob')
55
55
  end
56
56
  end
57
57
 
@@ -59,7 +59,7 @@ describe Twitter::Autolink do
59
59
  def original_text; "@zach&^$%^"; end
60
60
 
61
61
  it "should not be linked" do
62
- @autolinked_text.should link_to_screen_name('zach')
62
+ expect(@autolinked_text).to link_to_screen_name('zach')
63
63
  end
64
64
  end
65
65
 
@@ -70,7 +70,7 @@ describe Twitter::Autolink do
70
70
  end
71
71
 
72
72
  it "should not be linked" do
73
- @autolinked_text.should link_to_screen_name(@twenty_character_username)
73
+ expect(@autolinked_text).to link_to_screen_name(@twenty_character_username)
74
74
  end
75
75
  end
76
76
 
@@ -78,7 +78,7 @@ describe Twitter::Autolink do
78
78
  def original_text; "@jacobの"; end
79
79
 
80
80
  it "should be linked" do
81
- @autolinked_text.should link_to_screen_name('jacob')
81
+ expect(@autolinked_text).to link_to_screen_name('jacob')
82
82
  end
83
83
  end
84
84
 
@@ -86,7 +86,7 @@ describe Twitter::Autolink do
86
86
  def original_text; "あ@matz"; end
87
87
 
88
88
  it "should be linked" do
89
- @autolinked_text.should link_to_screen_name('matz')
89
+ expect(@autolinked_text).to link_to_screen_name('matz')
90
90
  end
91
91
  end
92
92
 
@@ -94,7 +94,7 @@ describe Twitter::Autolink do
94
94
  def original_text; "あ@yoshimiの"; end
95
95
 
96
96
  it "should be linked" do
97
- @autolinked_text.should link_to_screen_name('yoshimi')
97
+ expect(@autolinked_text).to link_to_screen_name('yoshimi')
98
98
  end
99
99
  end
100
100
 
@@ -104,7 +104,7 @@ describe Twitter::Autolink do
104
104
  end
105
105
 
106
106
  it "should be linked" do
107
- @autolinked_text.should link_to_screen_name('jacob')
107
+ expect(@autolinked_text).to link_to_screen_name('jacob')
108
108
  end
109
109
  end
110
110
  end
@@ -114,8 +114,8 @@ describe Twitter::Autolink do
114
114
  context "when List is not available" do
115
115
  it "should not be linked" do
116
116
  @autolinked_text = TestAutolink.new.auto_link_usernames_or_lists("hello @jacob/my-list", :suppress_lists => true)
117
- @autolinked_text.should_not link_to_list_path('jacob/my-list')
118
- @autolinked_text.should include('my-list')
117
+ expect(@autolinked_text).to_not link_to_list_path('jacob/my-list')
118
+ expect(@autolinked_text).to include('my-list')
119
119
  end
120
120
  end
121
121
 
@@ -123,7 +123,7 @@ describe Twitter::Autolink do
123
123
  def original_text; "hello @jacob/my-list"; end
124
124
 
125
125
  it "should be linked" do
126
- @autolinked_text.should link_to_list_path('jacob/my-list')
126
+ expect(@autolinked_text).to link_to_list_path('jacob/my-list')
127
127
  end
128
128
  end
129
129
 
@@ -131,8 +131,8 @@ describe Twitter::Autolink do
131
131
  def original_text; "hello @jacob/ my-list"; end
132
132
 
133
133
  it "should NOT be linked" do
134
- @autolinked_text.should_not link_to_list_path('jacob/my-list')
135
- @autolinked_text.should link_to_screen_name('jacob')
134
+ expect(@autolinked_text).to_not link_to_list_path('jacob/my-list')
135
+ expect(@autolinked_text).to link_to_screen_name('jacob')
136
136
  end
137
137
  end
138
138
 
@@ -140,7 +140,7 @@ describe Twitter::Autolink do
140
140
  def original_text; "hello @/my-list"; end
141
141
 
142
142
  it "should NOT be linked" do
143
- Nokogiri::HTML(@autolinked_text).search('a').should be_empty
143
+ expect(Nokogiri::HTML(@autolinked_text).search('a')).to be_empty
144
144
  end
145
145
  end
146
146
 
@@ -148,7 +148,7 @@ describe Twitter::Autolink do
148
148
  def original_text; "@jacob/my-list"; end
149
149
 
150
150
  it "should be linked" do
151
- @autolinked_text.should link_to_list_path('jacob/my-list')
151
+ expect(@autolinked_text).to link_to_list_path('jacob/my-list')
152
152
  end
153
153
  end
154
154
 
@@ -156,7 +156,7 @@ describe Twitter::Autolink do
156
156
  def original_text; "meet@the/beach"; end
157
157
 
158
158
  it "should not be linked" do
159
- Nokogiri::HTML(@autolinked_text).search('a').should be_empty
159
+ expect(Nokogiri::HTML(@autolinked_text).search('a')).to be_empty
160
160
  end
161
161
  end
162
162
 
@@ -165,7 +165,7 @@ describe Twitter::Autolink do
165
165
 
166
166
  it "should be linked" do
167
167
  @autolinked_text = TestAutolink.new.auto_link("great.@jacob/my-list")
168
- @autolinked_text.should link_to_list_path('jacob/my-list')
168
+ expect(@autolinked_text).to link_to_list_path('jacob/my-list')
169
169
  end
170
170
  end
171
171
 
@@ -173,7 +173,7 @@ describe Twitter::Autolink do
173
173
  def original_text; "@zach/test&^$%^"; end
174
174
 
175
175
  it "should be linked" do
176
- @autolinked_text.should link_to_list_path('zach/test')
176
+ expect(@autolinked_text).to link_to_list_path('zach/test')
177
177
  end
178
178
  end
179
179
 
@@ -184,7 +184,7 @@ describe Twitter::Autolink do
184
184
  end
185
185
 
186
186
  it "should be linked" do
187
- @autolinked_text.should link_to_list_path(@twentyfive_character_list)
187
+ expect(@autolinked_text).to link_to_list_path(@twentyfive_character_list)
188
188
  end
189
189
  end
190
190
  end
@@ -194,7 +194,7 @@ describe Twitter::Autolink do
194
194
  def original_text; "#123"; end
195
195
 
196
196
  it "should not be linked" do
197
- @autolinked_text.should_not have_autolinked_hashtag('#123')
197
+ expect(@autolinked_text).to_not have_autolinked_hashtag('#123')
198
198
  end
199
199
  end
200
200
 
@@ -202,7 +202,7 @@ describe Twitter::Autolink do
202
202
  def original_text; "#ab1d"; end
203
203
 
204
204
  it "should be linked" do
205
- @autolinked_text.should have_autolinked_hashtag('#ab1d')
205
+ expect(@autolinked_text).to have_autolinked_hashtag('#ab1d')
206
206
  end
207
207
  end
208
208
 
@@ -210,7 +210,7 @@ describe Twitter::Autolink do
210
210
  def original_text; "#a_b_c_d"; end
211
211
 
212
212
  it "should be linked" do
213
- @autolinked_text.should have_autolinked_hashtag(original_text)
213
+ expect(@autolinked_text).to have_autolinked_hashtag(original_text)
214
214
  end
215
215
  end
216
216
 
@@ -218,7 +218,7 @@ describe Twitter::Autolink do
218
218
  def original_text; "ab#cd"; end
219
219
 
220
220
  it "should not be linked" do
221
- @autolinked_text.should_not have_autolinked_hashtag(original_text)
221
+ expect(@autolinked_text).to_not have_autolinked_hashtag(original_text)
222
222
  end
223
223
  end
224
224
 
@@ -226,11 +226,11 @@ describe Twitter::Autolink do
226
226
  def original_text; "Here's my url: http://foobar.com/#home"; end
227
227
 
228
228
  it "should not link the hashtag" do
229
- @autolinked_text.should_not have_autolinked_hashtag('#home')
229
+ expect(@autolinked_text).to_not have_autolinked_hashtag('#home')
230
230
  end
231
231
 
232
232
  it "should link the url" do
233
- @autolinked_text.should have_autolinked_url('http://foobar.com/#home')
233
+ expect(@autolinked_text).to have_autolinked_url('http://foobar.com/#home')
234
234
  end
235
235
  end
236
236
 
@@ -238,7 +238,7 @@ describe Twitter::Autolink do
238
238
  def original_text; "#2ab"; end
239
239
 
240
240
  it "should be linked" do
241
- @autolinked_text.should have_autolinked_hashtag(original_text)
241
+ expect(@autolinked_text).to have_autolinked_hashtag(original_text)
242
242
  end
243
243
  end
244
244
 
@@ -246,9 +246,9 @@ describe Twitter::Autolink do
246
246
  def original_text; "I'm frickin' awesome #ab #cd #ef"; end
247
247
 
248
248
  it "links each hashtag" do
249
- @autolinked_text.should have_autolinked_hashtag('#ab')
250
- @autolinked_text.should have_autolinked_hashtag('#cd')
251
- @autolinked_text.should have_autolinked_hashtag('#ef')
249
+ expect(@autolinked_text).to have_autolinked_hashtag('#ab')
250
+ expect(@autolinked_text).to have_autolinked_hashtag('#cd')
251
+ expect(@autolinked_text).to have_autolinked_hashtag('#ef')
252
252
  end
253
253
  end
254
254
 
@@ -256,7 +256,7 @@ describe Twitter::Autolink do
256
256
  def original_text; "ok, great.#abc"; end
257
257
 
258
258
  it "should be linked" do
259
- @autolinked_text.should have_autolinked_hashtag('#abc')
259
+ expect(@autolinked_text).to have_autolinked_hashtag('#abc')
260
260
  end
261
261
  end
262
262
 
@@ -264,7 +264,7 @@ describe Twitter::Autolink do
264
264
  def original_text; "&#nbsp;"; end
265
265
 
266
266
  it "should not be linked" do
267
- @autolinked_text.should_not have_autolinked_hashtag('#nbsp;')
267
+ expect(@autolinked_text).to_not have_autolinked_hashtag('#nbsp;')
268
268
  end
269
269
  end
270
270
 
@@ -272,7 +272,7 @@ describe Twitter::Autolink do
272
272
  def original_text; "#great!"; end
273
273
 
274
274
  it "should be linked, but should not include the !" do
275
- @autolinked_text.should have_autolinked_hashtag('#great')
275
+ expect(@autolinked_text).to have_autolinked_hashtag('#great')
276
276
  end
277
277
  end
278
278
 
@@ -280,7 +280,7 @@ describe Twitter::Autolink do
280
280
  def original_text; "#twj_devの"; end
281
281
 
282
282
  it "should be linked" do
283
- @autolinked_text.should have_autolinked_hashtag('#twj_devの')
283
+ expect(@autolinked_text).to have_autolinked_hashtag('#twj_devの')
284
284
  end
285
285
  end
286
286
 
@@ -288,7 +288,7 @@ describe Twitter::Autolink do
288
288
  def original_text; "#{[0x3000].pack('U')}#twj_dev"; end
289
289
 
290
290
  it "should be linked" do
291
- @autolinked_text.should have_autolinked_hashtag('#twj_dev')
291
+ expect(@autolinked_text).to have_autolinked_hashtag('#twj_dev')
292
292
  end
293
293
  end
294
294
 
@@ -296,7 +296,7 @@ describe Twitter::Autolink do
296
296
  def original_text; "#twj_dev#{[0x3000].pack('U')}"; end
297
297
 
298
298
  it "should be linked" do
299
- @autolinked_text.should have_autolinked_hashtag('#twj_dev')
299
+ expect(@autolinked_text).to have_autolinked_hashtag('#twj_dev')
300
300
  end
301
301
  end
302
302
 
@@ -305,8 +305,8 @@ describe Twitter::Autolink do
305
305
 
306
306
  it "should be linked" do
307
307
  link = Nokogiri::HTML(@autolinked_text).search('a')
308
- (link.inner_text.respond_to?(:force_encoding) ? link.inner_text.force_encoding("utf-8") : link.inner_text).should == "#{[0xFF03].pack('U')}twj_dev"
309
- link.first['href'].should == 'https://twitter.com/#!/search?q=%23twj_dev'
308
+ expect((link.inner_text.respond_to?(:force_encoding) ? link.inner_text.force_encoding("utf-8") : link.inner_text)).to be == "#{[0xFF03].pack('U')}twj_dev"
309
+ expect(link.first['href']).to be == 'https://twitter.com/search?q=%23twj_dev'
310
310
  end
311
311
  end
312
312
 
@@ -317,7 +317,7 @@ describe Twitter::Autolink do
317
317
  end
318
318
 
319
319
  it "should be linked" do
320
- @autolinked_text.should == "<a class=\"tweet-url hashtag\" href=\"https://twitter.com/#!/search?q=%23éhashtag\" rel=\"nofollow\" title=\"#éhashtag\">#éhashtag</a>"
320
+ expect(@autolinked_text).to be == "<a class=\"tweet-url hashtag\" href=\"https://twitter.com/search?q=%23éhashtag\" rel=\"nofollow\" title=\"#éhashtag\">#éhashtag</a>"
321
321
  end
322
322
  end
323
323
 
@@ -330,7 +330,7 @@ describe Twitter::Autolink do
330
330
  def original_text; "On my search engine #{url} I found good links."; end
331
331
 
332
332
  it "should be linked" do
333
- @autolinked_text.should have_autolinked_url(url)
333
+ expect(@autolinked_text).to have_autolinked_url(url)
334
334
  end
335
335
  end
336
336
 
@@ -338,7 +338,7 @@ describe Twitter::Autolink do
338
338
  def original_text; "いまなにしてる#{url}いまなにしてる"; end
339
339
 
340
340
  it "should be linked" do
341
- @autolinked_text.should have_autolinked_url(url)
341
+ expect(@autolinked_text).to have_autolinked_url(url)
342
342
  end
343
343
  end
344
344
 
@@ -346,14 +346,14 @@ describe Twitter::Autolink do
346
346
  def original_text; "I found a neatness (#{url})"; end
347
347
 
348
348
  it "should be linked" do
349
- @autolinked_text.should have_autolinked_url(url)
349
+ expect(@autolinked_text).to have_autolinked_url(url)
350
350
  end
351
351
 
352
352
  context "when the URL ends with a slash;" do
353
353
  def url; "http://www.google.com/"; end
354
354
 
355
355
  it "should be linked" do
356
- @autolinked_text.should have_autolinked_url(url)
356
+ expect(@autolinked_text).to have_autolinked_url(url)
357
357
  end
358
358
  end
359
359
 
@@ -361,7 +361,7 @@ describe Twitter::Autolink do
361
361
  def url; "http://www.google.com/fsdfasdf"; end
362
362
 
363
363
  it "should be linked" do
364
- @autolinked_text.should have_autolinked_url(url)
364
+ expect(@autolinked_text).to have_autolinked_url(url)
365
365
  end
366
366
  end
367
367
  end
@@ -370,14 +370,14 @@ describe Twitter::Autolink do
370
370
  def original_text; "I found a neatness (#{url})"; end
371
371
 
372
372
  it "should be linked" do
373
- @autolinked_text.should have_autolinked_url(url)
373
+ expect(@autolinked_text).to have_autolinked_url(url)
374
374
  end
375
375
 
376
376
  context "wikipedia" do
377
377
  def url; "http://en.wikipedia.org/wiki/Madonna_(artist)"; end
378
378
 
379
379
  it "should be linked" do
380
- @autolinked_text.should have_autolinked_url(url)
380
+ expect(@autolinked_text).to have_autolinked_url(url)
381
381
  end
382
382
  end
383
383
 
@@ -385,7 +385,7 @@ describe Twitter::Autolink do
385
385
  def url; "http://msdn.com/S(deadbeef)/page.htm"; end
386
386
 
387
387
  it "should be linked" do
388
- @autolinked_text.should have_autolinked_url(url)
388
+ expect(@autolinked_text).to have_autolinked_url(url)
389
389
  end
390
390
  end
391
391
 
@@ -393,7 +393,7 @@ describe Twitter::Autolink do
393
393
  def url; "http://example.com/i_has_a_("; end
394
394
 
395
395
  it "should be linked" do
396
- @autolinked_text.should have_autolinked_url("http://example.com/i_has_a_")
396
+ expect(@autolinked_text).to have_autolinked_url("http://example.com/i_has_a_")
397
397
  end
398
398
  end
399
399
 
@@ -401,7 +401,7 @@ describe Twitter::Autolink do
401
401
  def url; "http://foo.com/foo_(\")_bar" end
402
402
 
403
403
  it "should be linked" do
404
- @autolinked_text.should have_autolinked_url("http://foo.com/foo_")
404
+ expect(@autolinked_text).to have_autolinked_url("http://foo.com/foo_")
405
405
  end
406
406
  end
407
407
 
@@ -409,7 +409,7 @@ describe Twitter::Autolink do
409
409
  def url; 'http://x.xx.com/("style="color:red"onmouseover="alert(1)' end
410
410
 
411
411
  it "should be linked" do
412
- @autolinked_text.should have_autolinked_url("http://x.xx.com/")
412
+ expect(@autolinked_text).to have_autolinked_url("http://x.xx.com/")
413
413
  end
414
414
  end
415
415
  end
@@ -418,7 +418,7 @@ describe Twitter::Autolink do
418
418
  def original_text; "Check this out @hoverbird:#{url}"; end
419
419
 
420
420
  it "should be linked" do
421
- @autolinked_text.should have_autolinked_url(url)
421
+ expect(@autolinked_text).to have_autolinked_url(url)
422
422
  end
423
423
  end
424
424
 
@@ -426,7 +426,7 @@ describe Twitter::Autolink do
426
426
  it "does not consume ending punctuation" do
427
427
  matcher = TestAutolink.new
428
428
  %w| ? ! , . : ; ] ) } = \ ' |.each do |char|
429
- matcher.auto_link("#{url}#{char}").should have_autolinked_url(url)
429
+ expect(matcher.auto_link("#{url}#{char}")).to have_autolinked_url(url)
430
430
  end
431
431
  end
432
432
  end
@@ -435,7 +435,7 @@ describe Twitter::Autolink do
435
435
  it "should be linked" do
436
436
  matcher = TestAutolink.new
437
437
  %w| \ ' / ! = |.each do |char|
438
- matcher.auto_link("#{char}#{url}").should have_autolinked_url(url)
438
+ expect(matcher.auto_link("#{char}#{url}")).to have_autolinked_url(url)
439
439
  end
440
440
  end
441
441
  end
@@ -444,7 +444,7 @@ describe Twitter::Autolink do
444
444
  def original_text; "<link rel='true'>#{url}</link>"; end
445
445
 
446
446
  it "should be linked" do
447
- @autolinked_text.should have_autolinked_url(url)
447
+ expect(@autolinked_text).to have_autolinked_url(url)
448
448
  end
449
449
  end
450
450
 
@@ -452,8 +452,8 @@ describe Twitter::Autolink do
452
452
  def original_text; "http://www.links.org link at start of page, link at end http://www.foo.org"; end
453
453
 
454
454
  it "should autolink each one" do
455
- @autolinked_text.should have_autolinked_url('http://www.links.org')
456
- @autolinked_text.should have_autolinked_url('http://www.foo.org')
455
+ expect(@autolinked_text).to have_autolinked_url('http://www.links.org')
456
+ expect(@autolinked_text).to have_autolinked_url('http://www.foo.org')
457
457
  end
458
458
  end
459
459
 
@@ -461,9 +461,9 @@ describe Twitter::Autolink do
461
461
  def original_text; "http://foo.com https://bar.com http://mail.foobar.org"; end
462
462
 
463
463
  it "should autolink each one, in the proper order" do
464
- @autolinked_text.should have_autolinked_url('http://foo.com')
465
- @autolinked_text.should have_autolinked_url('https://bar.com')
466
- @autolinked_text.should have_autolinked_url('http://mail.foobar.org')
464
+ expect(@autolinked_text).to have_autolinked_url('http://foo.com')
465
+ expect(@autolinked_text).to have_autolinked_url('https://bar.com')
466
+ expect(@autolinked_text).to have_autolinked_url('http://mail.foobar.org')
467
467
  end
468
468
  end
469
469
 
@@ -471,7 +471,7 @@ describe Twitter::Autolink do
471
471
  def original_text; "Yahoo integriert Facebook http://golem.mobi/0912/71607.html"; end
472
472
 
473
473
  it "should autolink it" do
474
- @autolinked_text.should have_autolinked_url('http://golem.mobi/0912/71607.html')
474
+ expect(@autolinked_text).to have_autolinked_url('http://golem.mobi/0912/71607.html')
475
475
  end
476
476
  end
477
477
 
@@ -480,7 +480,7 @@ describe Twitter::Autolink do
480
480
 
481
481
  it "does not link at all" do
482
482
  link = Nokogiri::HTML(@autolinked_text).search('a')
483
- link.should be_empty
483
+ expect(link).to be_empty
484
484
  end
485
485
  end
486
486
 
@@ -489,7 +489,7 @@ describe Twitter::Autolink do
489
489
  def original_text; 'http://x.xx.com/@"style="color:pink"onmouseover=alert(1)//'; end
490
490
 
491
491
  it "should not allow XSS follwing @" do
492
- @autolinked_text.should have_autolinked_url('http://x.xx.com/')
492
+ expect(@autolinked_text).to have_autolinked_url('http://x.xx.com/')
493
493
  end
494
494
  end
495
495
 
@@ -497,7 +497,7 @@ describe Twitter::Autolink do
497
497
  def original_text; 'http://example.com/@foobar'; end
498
498
 
499
499
  it "should link url" do
500
- @autolinked_text.should have_autolinked_url('http://example.com/@foobar')
500
+ expect(@autolinked_text).to have_autolinked_url('http://example.com/@foobar')
501
501
  end
502
502
  end
503
503
 
@@ -505,8 +505,8 @@ describe Twitter::Autolink do
505
505
  def original_text; 'http://example.com/@foobar/'; end
506
506
 
507
507
  it "should not link the username but link full url" do
508
- @autolinked_text.should have_autolinked_url('http://example.com/@foobar/')
509
- @autolinked_text.should_not link_to_screen_name('foobar')
508
+ expect(@autolinked_text).to have_autolinked_url('http://example.com/@foobar/')
509
+ expect(@autolinked_text).to_not link_to_screen_name('foobar')
510
510
  end
511
511
  end
512
512
  end
@@ -516,7 +516,7 @@ describe Twitter::Autolink do
516
516
  def original_text; "Test a ton of periods http://example.com/path.........................................."; end
517
517
 
518
518
  it "should autolink" do
519
- @autolinked_text.should have_autolinked_url('http://example.com/path')
519
+ expect(@autolinked_text).to have_autolinked_url('http://example.com/path')
520
520
  end
521
521
  end
522
522
 
@@ -524,7 +524,7 @@ describe Twitter::Autolink do
524
524
  def original_text; "Single char file ext http://www.bestbuy.com/site/Currie+Technologies+-+Ezip+400+Scooter/9885188.p?id=1218189013070&skuId=9885188"; end
525
525
 
526
526
  it "should autolink" do
527
- @autolinked_text.should have_autolinked_url('http://www.bestbuy.com/site/Currie+Technologies+-+Ezip+400+Scooter/9885188.p?id=1218189013070&skuId=9885188')
527
+ expect(@autolinked_text).to have_autolinked_url('http://www.bestbuy.com/site/Currie+Technologies+-+Ezip+400+Scooter/9885188.p?id=1218189013070&skuId=9885188')
528
528
  end
529
529
  end
530
530
  end
@@ -538,21 +538,21 @@ describe Twitter::Autolink do
538
538
 
539
539
  it "should allow url/hashtag overlap" do
540
540
  auto_linked = @linker.auto_link("https://twitter.com/#search")
541
- auto_linked.should have_autolinked_url('https://twitter.com/#search')
541
+ expect(auto_linked).to have_autolinked_url('https://twitter.com/#search')
542
542
  end
543
543
 
544
544
  it "should not add invalid option in HTML tags" do
545
545
  auto_linked = @linker.auto_link("https://twitter.com/ is a URL, not a hashtag", :hashtag_class => 'hashtag_classname')
546
- auto_linked.should have_autolinked_url('https://twitter.com/')
547
- auto_linked.should_not include('hashtag_class')
548
- auto_linked.should_not include('hashtag_classname')
546
+ expect(auto_linked).to have_autolinked_url('https://twitter.com/')
547
+ expect(auto_linked).to_not include('hashtag_class')
548
+ expect(auto_linked).to_not include('hashtag_classname')
549
549
  end
550
550
 
551
551
  it "should autolink url/hashtag/mention in text with Unicode supplementary characters" do
552
552
  auto_linked = @linker.auto_link("#{[0x10400].pack('U')} #hashtag #{[0x10400].pack('U')} @mention #{[0x10400].pack('U')} http://twitter.com/")
553
- auto_linked.should have_autolinked_hashtag('#hashtag')
554
- auto_linked.should link_to_screen_name('mention')
555
- auto_linked.should have_autolinked_url('http://twitter.com/')
553
+ expect(auto_linked).to have_autolinked_hashtag('#hashtag')
554
+ expect(auto_linked).to link_to_screen_name('mention')
555
+ expect(auto_linked).to have_autolinked_url('http://twitter.com/')
556
556
  end
557
557
  end
558
558
 
@@ -574,11 +574,11 @@ describe Twitter::Autolink do
574
574
  ]
575
575
  }])
576
576
  html = Nokogiri::HTML(linked)
577
- html.search('a').should_not be_empty
578
- html.search('a[@href="http://t.co/0JG5Mcq"]').should_not be_empty
579
- html.search('span[@class=js-display-url]').inner_text.should == "blog.twitter.com/2011/05/twitte"
580
- html.inner_text.should == " http://blog.twitter.com/2011/05/twitter-for-mac-update.html …"
581
- html.search('span[@style="position:absolute;left:-9999px;"]').size.should == 4
577
+ expect(html.search('a')).to_not be_empty
578
+ expect(html.search('a[@href="http://t.co/0JG5Mcq"]')).to_not be_empty
579
+ expect(html.search('span[@class=js-display-url]').inner_text).to be == "blog.twitter.com/2011/05/twitte"
580
+ expect(html.inner_text).to be == " http://blog.twitter.com/2011/05/twitter-for-mac-update.html …"
581
+ expect(html.search('span[@style="position:absolute;left:-9999px;"]').size).to be == 4
582
582
  end
583
583
 
584
584
  it "should accept invisible_tag_attrs option" do
@@ -596,7 +596,7 @@ describe Twitter::Autolink do
596
596
  :invisible_tag_attrs => "style='dummy;'"
597
597
  })
598
598
  html = Nokogiri::HTML(linked)
599
- html.search('span[@style="dummy;"]').size.should == 4
599
+ expect(html.search('span[@style="dummy;"]').size).to be == 4
600
600
  end
601
601
 
602
602
  it "should show display_url if available in entity" do
@@ -609,90 +609,90 @@ describe Twitter::Autolink do
609
609
  }]
610
610
  )
611
611
  html = Nokogiri::HTML(linked)
612
- html.search('a').should_not be_empty
613
- html.search('a[@href="http://t.co/0JG5Mcq"]').should_not be_empty
614
- html.search('span[@class=js-display-url]').inner_text.should == "blog.twitter.com/2011/05/twitte"
615
- html.inner_text.should == " http://blog.twitter.com/2011/05/twitter-for-mac-update.html …"
612
+ expect(html.search('a')).to_not be_empty
613
+ expect(html.search('a[@href="http://t.co/0JG5Mcq"]')).to_not be_empty
614
+ expect(html.search('span[@class=js-display-url]').inner_text).to be == "blog.twitter.com/2011/05/twitte"
615
+ expect(html.inner_text).to be == " http://blog.twitter.com/2011/05/twitter-for-mac-update.html …"
616
616
  end
617
617
 
618
618
  it "should apply :class as a CSS class" do
619
619
  linked = @linker.auto_link("http://example.com/", :class => 'myclass')
620
- linked.should have_autolinked_url('http://example.com/')
621
- linked.should match(/myclass/)
620
+ expect(linked).to have_autolinked_url('http://example.com/')
621
+ expect(linked).to match(/myclass/)
622
622
  end
623
623
 
624
624
  it "should apply :url_class only on URL" do
625
625
  linked = @linker.auto_link("http://twitter.com")
626
- linked.should have_autolinked_url('http://twitter.com')
627
- linked.should_not match(/class/)
626
+ expect(linked).to have_autolinked_url('http://twitter.com')
627
+ expect(expect(linked)).to_not match(/class/)
628
628
 
629
629
  linked = @linker.auto_link("http://twitter.com", :url_class => 'testClass')
630
- linked.should have_autolinked_url('http://twitter.com')
631
- linked.should match(/class=\"testClass\"/)
630
+ expect(linked).to have_autolinked_url('http://twitter.com')
631
+ expect(linked).to match(/class=\"testClass\"/)
632
632
 
633
633
  linked = @linker.auto_link("#hash @tw", :url_class => 'testClass')
634
- linked.should match(/class=\"tweet-url hashtag\"/)
635
- linked.should match(/class=\"tweet-url username\"/)
636
- linked.should_not match(/class=\"testClass\"/)
634
+ expect(linked).to match(/class=\"tweet-url hashtag\"/)
635
+ expect(linked).to match(/class=\"tweet-url username\"/)
636
+ expect(linked).to_not match(/class=\"testClass\"/)
637
637
  end
638
638
 
639
639
  it "should add rel=nofollow by default" do
640
640
  linked = @linker.auto_link("http://example.com/")
641
- linked.should have_autolinked_url('http://example.com/')
642
- linked.should match(/nofollow/)
641
+ expect(linked).to have_autolinked_url('http://example.com/')
642
+ expect(linked).to match(/nofollow/)
643
643
  end
644
644
 
645
645
  it "should include the '@' symbol in a username when passed :username_include_symbol" do
646
646
  linked = @linker.auto_link("@user", :username_include_symbol => true)
647
- linked.should link_to_screen_name('user', '@user')
647
+ expect(linked).to link_to_screen_name('user', '@user')
648
648
  end
649
649
 
650
650
  it "should include the '@' symbol in a list when passed :username_include_symbol" do
651
651
  linked = @linker.auto_link("@user/list", :username_include_symbol => true)
652
- linked.should link_to_list_path('user/list', '@user/list')
652
+ expect(linked).to link_to_list_path('user/list', '@user/list')
653
653
  end
654
654
 
655
655
  it "should not add rel=nofollow when passed :suppress_no_follow" do
656
656
  linked = @linker.auto_link("http://example.com/", :suppress_no_follow => true)
657
- linked.should have_autolinked_url('http://example.com/')
658
- linked.should_not match(/nofollow/)
657
+ expect(linked).to have_autolinked_url('http://example.com/')
658
+ expect(linked).to_not match(/nofollow/)
659
659
  end
660
660
 
661
661
  it "should not add a target attribute by default" do
662
662
  linked = @linker.auto_link("http://example.com/")
663
- linked.should have_autolinked_url('http://example.com/')
664
- linked.should_not match(/target=/)
663
+ expect(linked).to have_autolinked_url('http://example.com/')
664
+ expect(linked).to_not match(/target=/)
665
665
  end
666
666
 
667
667
  it "should respect the :target option" do
668
668
  linked = @linker.auto_link("http://example.com/", :target => 'mywindow')
669
- linked.should have_autolinked_url('http://example.com/')
670
- linked.should match(/target="mywindow"/)
669
+ expect(linked).to have_autolinked_url('http://example.com/')
670
+ expect(linked).to match(/target="mywindow"/)
671
671
  end
672
672
 
673
673
  it "should customize href by username_url_block option" do
674
674
  linked = @linker.auto_link("@test", :username_url_block => lambda{|a| "dummy"})
675
- linked.should have_autolinked_url('dummy', 'test')
675
+ expect(linked).to have_autolinked_url('dummy', 'test')
676
676
  end
677
677
 
678
678
  it "should customize href by list_url_block option" do
679
679
  linked = @linker.auto_link("@test/list", :list_url_block => lambda{|a| "dummy"})
680
- linked.should have_autolinked_url('dummy', 'test/list')
680
+ expect(linked).to have_autolinked_url('dummy', 'test/list')
681
681
  end
682
682
 
683
683
  it "should customize href by hashtag_url_block option" do
684
684
  linked = @linker.auto_link("#hashtag", :hashtag_url_block => lambda{|a| "dummy"})
685
- linked.should have_autolinked_url('dummy', '#hashtag')
685
+ expect(linked).to have_autolinked_url('dummy', '#hashtag')
686
686
  end
687
687
 
688
688
  it "should customize href by cashtag_url_block option" do
689
689
  linked = @linker.auto_link("$CASH", :cashtag_url_block => lambda{|a| "dummy"})
690
- linked.should have_autolinked_url('dummy', '$CASH')
690
+ expect(linked).to have_autolinked_url('dummy', '$CASH')
691
691
  end
692
692
 
693
693
  it "should customize href by link_url_block option" do
694
694
  linked = @linker.auto_link("http://example.com/", :link_url_block => lambda{|a| "dummy"})
695
- linked.should have_autolinked_url('dummy', 'http://example.com/')
695
+ expect(linked).to have_autolinked_url('dummy', 'http://example.com/')
696
696
  end
697
697
 
698
698
  it "should modify link attributes by link_attribute_block" do
@@ -701,17 +701,17 @@ describe Twitter::Autolink do
701
701
  attributes[:"dummy-hash-attr"] = "test" if entity[:hashtag]
702
702
  }
703
703
  )
704
- linked.should match(/<a[^>]+hashtag[^>]+dummy-hash-attr=\"test\"[^>]+>/)
705
- linked.should_not match(/<a[^>]+username[^>]+dummy-hash-attr=\"test\"[^>]+>/)
706
- linked.should_not match(/link_attribute_block/i)
704
+ expect(linked).to match(/<a[^>]+hashtag[^>]+dummy-hash-attr=\"test\"[^>]+>/)
705
+ expect(linked).to_not match(/<a[^>]+username[^>]+dummy-hash-attr=\"test\"[^>]+>/)
706
+ expect(linked).to_not match(/link_attribute_block/i)
707
707
 
708
708
  linked = @linker.auto_link("@mention http://twitter.com/",
709
709
  :link_attribute_block => lambda{|entity, attributes|
710
710
  attributes["dummy-url-attr"] = entity[:url] if entity[:url]
711
711
  }
712
712
  )
713
- linked.should_not match(/<a[^>]+username[^>]+dummy-url-attr=\"http:\/\/twitter.com\/\"[^>]*>/)
714
- linked.should match(/<a[^>]+dummy-url-attr=\"http:\/\/twitter.com\/\"/)
713
+ expect(linked).to_not match(/<a[^>]+username[^>]+dummy-url-attr=\"http:\/\/twitter.com\/\"[^>]*>/)
714
+ expect(linked).to match(/<a[^>]+dummy-url-attr=\"http:\/\/twitter.com\/\"/)
715
715
  end
716
716
 
717
717
  it "should modify link text by link_text_block" do
@@ -720,8 +720,8 @@ describe Twitter::Autolink do
720
720
  entity[:hashtag] ? "#replaced" : "pre_#{text}_post"
721
721
  }
722
722
  )
723
- linked.should match(/<a[^>]+>#replaced<\/a>/)
724
- linked.should match(/<a[^>]+>pre_mention_post<\/a>/)
723
+ expect(linked).to match(/<a[^>]+>#replaced<\/a>/)
724
+ expect(linked).to match(/<a[^>]+>pre_mention_post<\/a>/)
725
725
 
726
726
  linked = @linker.auto_link("#hash @mention", {
727
727
  :link_text_block => lambda{|entity, text|
@@ -729,28 +729,28 @@ describe Twitter::Autolink do
729
729
  },
730
730
  :symbol_tag => "s", :text_with_symbol_tag => "b", :username_include_symbol => true
731
731
  })
732
- linked.should match(/<a[^>]+>pre_<s>#<\/s><b>hash<\/b>_post<\/a>/)
733
- linked.should match(/<a[^>]+>pre_<s>@<\/s><b>mention<\/b>_post<\/a>/)
732
+ expect(linked).to match(/<a[^>]+>pre_<s>#<\/s><b>hash<\/b>_post<\/a>/)
733
+ expect(linked).to match(/<a[^>]+>pre_<s>@<\/s><b>mention<\/b>_post<\/a>/)
734
734
  end
735
735
 
736
736
  it "should apply :url_target only to auto-linked URLs" do
737
737
  auto_linked = @linker.auto_link("#hashtag @mention http://test.com/", {:url_target => '_blank'})
738
- auto_linked.should have_autolinked_hashtag('#hashtag')
739
- auto_linked.should link_to_screen_name('mention')
740
- auto_linked.should have_autolinked_url('http://test.com/')
741
- auto_linked.should_not match(/<a[^>]+hashtag[^>]+target[^>]+>/)
742
- auto_linked.should_not match(/<a[^>]+username[^>]+target[^>]+>/)
743
- auto_linked.should match(/<a[^>]+test.com[^>]+target=\"_blank\"[^>]*>/)
738
+ expect(auto_linked).to have_autolinked_hashtag('#hashtag')
739
+ expect(auto_linked).to link_to_screen_name('mention')
740
+ expect(auto_linked).to have_autolinked_url('http://test.com/')
741
+ expect(auto_linked).to_not match(/<a[^>]+hashtag[^>]+target[^>]+>/)
742
+ expect(auto_linked).to_not match(/<a[^>]+username[^>]+target[^>]+>/)
743
+ expect(auto_linked).to match(/<a[^>]+test.com[^>]+target=\"_blank\"[^>]*>/)
744
744
  end
745
745
 
746
746
  it "should apply target='_blank' only to auto-linked URLs when :target_blank is set to true" do
747
747
  auto_linked = @linker.auto_link("#hashtag @mention http://test.com/", {:target_blank => true})
748
- auto_linked.should have_autolinked_hashtag('#hashtag')
749
- auto_linked.should link_to_screen_name('mention')
750
- auto_linked.should have_autolinked_url('http://test.com/')
751
- auto_linked.should match(/<a[^>]+hashtag[^>]+target=\"_blank\"[^>]*>/)
752
- auto_linked.should match(/<a[^>]+username[^>]+target=\"_blank\"[^>]*>/)
753
- auto_linked.should match(/<a[^>]+test.com[^>]+target=\"_blank\"[^>]*>/)
748
+ expect(auto_linked).to have_autolinked_hashtag('#hashtag')
749
+ expect(auto_linked).to link_to_screen_name('mention')
750
+ expect(auto_linked).to have_autolinked_url('http://test.com/')
751
+ expect(auto_linked).to match(/<a[^>]+hashtag[^>]+target=\"_blank\"[^>]*>/)
752
+ expect(auto_linked).to match(/<a[^>]+username[^>]+target=\"_blank\"[^>]*>/)
753
+ expect(auto_linked).to match(/<a[^>]+test.com[^>]+target=\"_blank\"[^>]*>/)
754
754
  end
755
755
  end
756
756
 
@@ -760,39 +760,39 @@ describe Twitter::Autolink do
760
760
  end
761
761
 
762
762
  it "should use display_url and expanded_url" do
763
- @linker.send(:link_url_with_entity,
763
+ expect(@linker.send(:link_url_with_entity,
764
764
  {
765
765
  :url => "http://t.co/abcde",
766
766
  :display_url => "twitter.com",
767
767
  :expanded_url => "http://twitter.com/"},
768
- {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'").should == "<span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span><span class='invisible'>http://</span><span class='js-display-url'>twitter.com</span><span class='invisible'>/</span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span>";
768
+ {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'")).to be == "<span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span><span class='invisible'>http://</span><span class='js-display-url'>twitter.com</span><span class='invisible'>/</span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span>";
769
769
  end
770
770
 
771
771
  it "should correctly handle display_url ending with '…'" do
772
- @linker.send(:link_url_with_entity,
772
+ expect(@linker.send(:link_url_with_entity,
773
773
  {
774
774
  :url => "http://t.co/abcde",
775
775
  :display_url => "twitter.com…",
776
776
  :expanded_url => "http://twitter.com/abcdefg"},
777
- {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'").should == "<span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span><span class='invisible'>http://</span><span class='js-display-url'>twitter.com</span><span class='invisible'>/abcdefg</span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span>…</span>";
777
+ {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'")).to be == "<span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span><span class='invisible'>http://</span><span class='js-display-url'>twitter.com</span><span class='invisible'>/abcdefg</span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span>…</span>";
778
778
  end
779
779
 
780
780
  it "should correctly handle display_url starting with '…'" do
781
- @linker.send(:link_url_with_entity,
781
+ expect(@linker.send(:link_url_with_entity,
782
782
  {
783
783
  :url => "http://t.co/abcde",
784
784
  :display_url => "…tter.com/abcdefg",
785
785
  :expanded_url => "http://twitter.com/abcdefg"},
786
- {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'").should == "<span class='tco-ellipsis'>…<span class='invisible'>&nbsp;</span></span><span class='invisible'>http://twi</span><span class='js-display-url'>tter.com/abcdefg</span><span class='invisible'></span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span>";
786
+ {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'")).to be == "<span class='tco-ellipsis'>…<span class='invisible'>&nbsp;</span></span><span class='invisible'>http://twi</span><span class='js-display-url'>tter.com/abcdefg</span><span class='invisible'></span><span class='tco-ellipsis'><span class='invisible'>&nbsp;</span></span>";
787
787
  end
788
788
 
789
789
  it "should not create spans if display_url and expanded_url are on different domains" do
790
- @linker.send(:link_url_with_entity,
790
+ expect(@linker.send(:link_url_with_entity,
791
791
  {
792
792
  :url => "http://t.co/abcde",
793
793
  :display_url => "pic.twitter.com/xyz",
794
794
  :expanded_url => "http://twitter.com/foo/statuses/123/photo/1"},
795
- {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'").should == "pic.twitter.com/xyz"
795
+ {:invisible_tag_attrs => "class='invisible'"}).gsub('"', "'")).to be == "pic.twitter.com/xyz"
796
796
  end
797
797
  end
798
798
 
@@ -801,24 +801,24 @@ describe Twitter::Autolink do
801
801
  @linker = TestAutolink.new
802
802
  end
803
803
  it "should put :symbol_tag around symbol" do
804
- @linker.auto_link("@mention", {:symbol_tag => 's', :username_include_symbol=>true}).should match(/<s>@<\/s>mention/)
805
- @linker.auto_link("#hash", {:symbol_tag => 's'}).should match(/<s>#<\/s>hash/)
804
+ expect(@linker.auto_link("@mention", {:symbol_tag => 's', :username_include_symbol=>true})).to match(/<s>@<\/s>mention/)
805
+ expect(@linker.auto_link("#hash", {:symbol_tag => 's'})).to match(/<s>#<\/s>hash/)
806
806
  result = @linker.auto_link("@mention #hash $CASH", {:symbol_tag => 'b', :username_include_symbol=>true})
807
- result.should match(/<b>@<\/b>mention/)
808
- result.should match(/<b>#<\/b>hash/)
809
- result.should match(/<b>\$<\/b>CASH/)
807
+ expect(result).to match(/<b>@<\/b>mention/)
808
+ expect(result).to match(/<b>#<\/b>hash/)
809
+ expect(result).to match(/<b>\$<\/b>CASH/)
810
810
  end
811
811
  it "should put :text_with_symbol_tag around text" do
812
812
  result = @linker.auto_link("@mention #hash $CASH", {:text_with_symbol_tag => 'b'})
813
- result.should match(/<b>mention<\/b>/)
814
- result.should match(/<b>hash<\/b>/)
815
- result.should match(/<b>CASH<\/b>/)
813
+ expect(result).to match(/<b>mention<\/b>/)
814
+ expect(result).to match(/<b>hash<\/b>/)
815
+ expect(result).to match(/<b>CASH<\/b>/)
816
816
  end
817
817
  it "should put :symbol_tag around symbol and :text_with_symbol_tag around text" do
818
818
  result = @linker.auto_link("@mention #hash $CASH", {:symbol_tag => 's', :text_with_symbol_tag => 'b', :username_include_symbol=>true})
819
- result.should match(/<s>@<\/s><b>mention<\/b>/)
820
- result.should match(/<s>#<\/s><b>hash<\/b>/)
821
- result.should match(/<s>\$<\/s><b>CASH<\/b>/)
819
+ expect(result).to match(/<s>@<\/s><b>mention<\/b>/)
820
+ expect(result).to match(/<s>#<\/s><b>hash<\/b>/)
821
+ expect(result).to match(/<s>\$<\/s><b>CASH<\/b>/)
822
822
  end
823
823
  end
824
824
 
@@ -827,17 +827,17 @@ describe Twitter::Autolink do
827
827
  @linker = TestAutolink.new
828
828
  end
829
829
  it "should escape html entities properly" do
830
- @linker.html_escape("&").should == "&amp;"
831
- @linker.html_escape(">").should == "&gt;"
832
- @linker.html_escape("<").should == "&lt;"
833
- @linker.html_escape("\"").should == "&quot;"
834
- @linker.html_escape("'").should == "&#39;"
835
- @linker.html_escape("&<>\"").should == "&amp;&lt;&gt;&quot;"
836
- @linker.html_escape("<div>").should == "&lt;div&gt;"
837
- @linker.html_escape("a&b").should == "a&amp;b"
838
- @linker.html_escape("<a href=\"https://twitter.com\" target=\"_blank\">twitter & friends</a>").should == "&lt;a href=&quot;https://twitter.com&quot; target=&quot;_blank&quot;&gt;twitter &amp; friends&lt;/a&gt;"
839
- @linker.html_escape("&amp;").should == "&amp;amp;"
840
- @linker.html_escape(nil).should == nil
830
+ expect(@linker.html_escape("&")).to be == "&amp;"
831
+ expect(@linker.html_escape(">")).to be == "&gt;"
832
+ expect(@linker.html_escape("<")).to be == "&lt;"
833
+ expect(@linker.html_escape("\"")).to be == "&quot;"
834
+ expect(@linker.html_escape("'")).to be == "&#39;"
835
+ expect(@linker.html_escape("&<>\"")).to be == "&amp;&lt;&gt;&quot;"
836
+ expect(@linker.html_escape("<div>")).to be == "&lt;div&gt;"
837
+ expect(@linker.html_escape("a&b")).to be == "a&amp;b"
838
+ expect(@linker.html_escape("<a href=\"https://twitter.com\" target=\"_blank\">twitter & friends</a>")).to be == "&lt;a href=&quot;https://twitter.com&quot; target=&quot;_blank&quot;&gt;twitter &amp; friends&lt;/a&gt;"
839
+ expect(@linker.html_escape("&amp;")).to be == "&amp;amp;"
840
+ expect(@linker.html_escape(nil)).to be == nil
841
841
  end
842
842
  end
843
843