ndd-url_checker 0.3.2 → 0.3.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (44) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/LICENSE.txt +18 -17
  4. data/README.md +14 -7
  5. data/lib/ndd/url_checker.rb +6 -0
  6. data/lib/ndd/url_checker/reporting_url_checker.rb +4 -0
  7. data/lib/ndd/url_checker/status.rb +1 -0
  8. data/lib/ndd/url_checker/status_decorator.rb +11 -0
  9. data/lib/ndd/url_checker/version.rb +5 -0
  10. metadata +9 -249
  11. data/.document +0 -5
  12. data/.rspec +0 -1
  13. data/.ruby-gemset +0 -1
  14. data/.ruby-version +0 -1
  15. data/.travis.yml +0 -16
  16. data/Gemfile +0 -50
  17. data/Gemfile.lock +0 -162
  18. data/Guardfile +0 -38
  19. data/Rakefile +0 -51
  20. data/VERSION +0 -1
  21. data/lib/ndd/url_checker/reporting_url_checker.csv.erb +0 -4
  22. data/lib/ndd/url_checker/reporting_url_checker.html.erb +0 -188
  23. data/lib/ndd/url_checker/reporting_url_checker.json.erb +0 -27
  24. data/ndd-url_checker.gemspec +0 -134
  25. data/spec/ndd/url_checker/abstract_url_checker_spec.rb +0 -11
  26. data/spec/ndd/url_checker/blocking_url_checker_spec.rb +0 -12
  27. data/spec/ndd/url_checker/forked_url_checker_spec.rb +0 -12
  28. data/spec/ndd/url_checker/parallel_url_checker_spec.rb +0 -62
  29. data/spec/ndd/url_checker/reporting_url_checker/custom.txt.erb +0 -8
  30. data/spec/ndd/url_checker/reporting_url_checker/multiple_urls.csv +0 -6
  31. data/spec/ndd/url_checker/reporting_url_checker/multiple_urls.html +0 -246
  32. data/spec/ndd/url_checker/reporting_url_checker/multiple_urls.json +0 -49
  33. data/spec/ndd/url_checker/reporting_url_checker/multiple_urls.txt +0 -26
  34. data/spec/ndd/url_checker/reporting_url_checker/single_url.csv +0 -2
  35. data/spec/ndd/url_checker/reporting_url_checker/single_url.html +0 -182
  36. data/spec/ndd/url_checker/reporting_url_checker/single_url.json +0 -25
  37. data/spec/ndd/url_checker/reporting_url_checker/single_url.txt +0 -6
  38. data/spec/ndd/url_checker/reporting_url_checker_spec.rb +0 -131
  39. data/spec/ndd/url_checker/status_decorator_spec.rb +0 -208
  40. data/spec/ndd/url_checker/status_spec.rb +0 -510
  41. data/spec/ndd/url_checker/threaded_url_checker_spec.rb +0 -13
  42. data/spec/spec_helper.rb +0 -81
  43. data/spec/support/multiple_url_checker_spec.rb +0 -58
  44. data/spec/support/single_url_checker_spec.rb +0 -252
@@ -1,510 +0,0 @@
1
- require 'spec_helper'
2
-
3
- RSpec.describe NDD::UrlChecker::Status do
4
-
5
- # ------------------------------------------------------------------------------------------------------ unknown -----
6
- context 'when initialized' do
7
- let(:uri) { 'http://www.example.com' }
8
- let(:status) { NDD::UrlChecker::Status.new(uri) }
9
-
10
- context '#uri' do
11
- it 'returns the original URI' do
12
- expect(status.uri).to eq uri
13
- end
14
- end
15
-
16
- context '#uris' do
17
- it 'returns the original URI' do
18
- expect(status.uris).to eq [uri]
19
- end
20
- end
21
-
22
- context '#code' do
23
- it 'returns :unknown' do
24
- expect(status.code).to eq :unknown
25
- end
26
- end
27
-
28
- context '#valid?' do
29
- it 'returns false' do
30
- expect(status.valid?).to be_falsey
31
- end
32
- end
33
-
34
- context '#invalid?' do
35
- it 'returns false' do
36
- expect(status.invalid?).to be_falsey
37
- end
38
- end
39
-
40
- context '#error' do
41
- it 'returns nil' do
42
- expect(status.error).to be_nil
43
- end
44
- end
45
-
46
- context '#direct' do
47
- let!(:new_status) { status.direct }
48
- it 'changes the code to :direct' do
49
- expect(status.code).to eq :direct
50
- end
51
- it 'returns the status' do
52
- expect(new_status).to eq status
53
- end
54
- end
55
-
56
- context '#failed' do
57
- let!(:new_status) { status.failed(StandardError.new('some error')) }
58
- it 'changes the code to :failed' do
59
- expect(status.code).to eq :failed
60
- end
61
- it 'returns the status' do
62
- expect(new_status).to eq status
63
- end
64
- end
65
-
66
- context '#redirected' do
67
- let!(:new_status) { status.redirected('http://www.redirected.com') }
68
- it 'changes the code to :redirected' do
69
- expect(status.code).to eq :redirected
70
- end
71
- it 'returns the status' do
72
- expect(new_status).to eq status
73
- end
74
- end
75
-
76
- context '#too_many_redirects' do
77
- let!(:new_status) { status.too_many_redirects }
78
- it 'changes the code to :too_many_redirects' do
79
- expect(status.code).to eq :too_many_redirects
80
- end
81
- it 'returns the status' do
82
- expect(new_status).to eq status
83
- end
84
- end
85
-
86
- context '#unknown_host' do
87
- it 'changes the code to :unknown_host' do
88
- status.unknown_host
89
- expect(status.code).to eq :unknown_host
90
- end
91
- it 'returns the status' do
92
- expect(status.unknown_host).to eq status
93
- end
94
- end
95
-
96
- context '#to_s' do
97
- it 'returns the status representation' do
98
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com"\], @code=:unknown>$}
99
- end
100
- end
101
- end
102
-
103
- # ------------------------------------------------------------------------------------------------------- direct -----
104
- context 'when code is :direct' do
105
- let(:uri) { 'http://www.example.com' }
106
- let(:status) { NDD::UrlChecker::Status.new(uri).direct }
107
-
108
- context '#uri' do
109
- it 'returns the original URI' do
110
- expect(status.uri).to eq uri
111
- end
112
- end
113
-
114
- context '#uris' do
115
- it 'returns the original URI' do
116
- expect(status.uris).to eq [uri]
117
- end
118
- end
119
-
120
- context '#code' do
121
- it 'returns :direct' do
122
- expect(status.code).to eq :direct
123
- end
124
- end
125
-
126
- context '#valid?' do
127
- it 'returns true' do
128
- expect(status.valid?).to be_truthy
129
- end
130
- end
131
-
132
- context '#invalid?' do
133
- it 'returns false' do
134
- expect(status.invalid?).to be_falsey
135
- end
136
- end
137
-
138
- context '#error' do
139
- it 'returns nil' do
140
- expect(status.error).to be_nil
141
- end
142
- end
143
-
144
- context '#direct' do
145
- it 'raises an error' do
146
- expect { status.direct }.to raise_error(/from :direct to :direct is forbidden/)
147
- end
148
- end
149
-
150
- context '#failed' do
151
- it 'raises an error' do
152
- expect { status.failed(StandardError.new('some error')) }.to raise_error(/from :direct to :failed is forbidden/)
153
- end
154
- end
155
-
156
- context '#redirected' do
157
- it 'raises an error' do
158
- expect { status.redirected('http://www.redirected.com') }.to raise_error(/from :direct to :redirected is forbidden/)
159
- end
160
- end
161
-
162
- context '#too_many_redirects' do
163
- it 'raises an error' do
164
- expect { status.too_many_redirects }.to raise_error(/from :direct to :too_many_redirects is forbidden/)
165
- end
166
- end
167
-
168
- context '#unknown_host' do
169
- it 'raises an error' do
170
- expect { status.unknown_host }.to raise_error(/from :direct to :unknown_host is forbidden/)
171
- end
172
- end
173
-
174
- context '#to_s' do
175
- it 'returns the status representation' do
176
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com"\], @code=:direct>$}
177
- end
178
- end
179
- end
180
-
181
- # ------------------------------------------------------------------------------------------------------- failed -----
182
- context 'when code is :failed' do
183
- let(:uri) { 'http://www.example.com' }
184
- let(:status) { NDD::UrlChecker::Status.new(uri).failed(StandardError.new('some error')) }
185
-
186
- context '#uri' do
187
- it 'returns the original URI' do
188
- expect(status.uri).to eq uri
189
- end
190
- end
191
-
192
- context '#uris' do
193
- it 'returns the original URI' do
194
- expect(status.uris).to eq [uri]
195
- end
196
- end
197
-
198
- context '#code' do
199
- it 'returns :failed' do
200
- expect(status.code).to eq :failed
201
- end
202
- end
203
-
204
- context '#valid?' do
205
- it 'returns false' do
206
- expect(status.valid?).to be_falsey
207
- end
208
- end
209
-
210
- context '#invalid?' do
211
- it 'returns true' do
212
- expect(status.invalid?).to be_truthy
213
- end
214
- end
215
-
216
- context '#error' do
217
- it 'returns the error' do
218
- expect(status.error).to eq StandardError.new('some error')
219
- end
220
- end
221
-
222
- context '#direct' do
223
- it 'raises an error' do
224
- expect { status.direct }.to raise_error(/from :failed to :direct is forbidden/)
225
- end
226
- end
227
-
228
- context '#failed' do
229
- it 'raises an error' do
230
- expect { status.failed(StandardError.new('some error')) }.to raise_error(/from :failed to :failed is forbidden/)
231
- end
232
- end
233
-
234
- context '#redirected' do
235
- it 'raises an error' do
236
- expect { status.redirected('http://www.redirected.com') }.to raise_error(/from :failed to :redirected is forbidden/)
237
- end
238
- end
239
-
240
- context '#too_many_redirects' do
241
- it 'raises an error' do
242
- expect { status.too_many_redirects }.to raise_error(/from :failed to :too_many_redirects is forbidden/)
243
- end
244
- end
245
-
246
- context '#unknown_host' do
247
- it 'raises an error' do
248
- expect { status.unknown_host }.to raise_error(/from :failed to :unknown_host is forbidden/)
249
- end
250
- end
251
-
252
- context '#to_s' do
253
- it 'returns the status representation' do
254
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com"\], @code=:failed, @error=#<StandardError: some error>>$}
255
- end
256
- end
257
- end
258
-
259
- # --------------------------------------------------------------------------------------------------- redirected -----
260
- context 'when code is :redirected' do
261
- let(:uri) { 'http://www.example.com' }
262
- let(:redirect_uri) { 'http://www.redirected.com' }
263
- let(:status) { NDD::UrlChecker::Status.new(uri).redirected(redirect_uri) }
264
-
265
- context '#uri' do
266
- it 'returns the original URI' do
267
- expect(status.uri).to eq uri
268
- end
269
- end
270
-
271
- context '#uris' do
272
- it 'returns all the URI' do
273
- expect(status.uris).to eq [uri, redirect_uri]
274
- end
275
- end
276
-
277
- context '#code' do
278
- it 'returns :redirected' do
279
- expect(status.code).to eq :redirected
280
- end
281
- end
282
-
283
- context '#valid?' do
284
- it 'returns true' do
285
- expect(status.valid?).to be_truthy
286
- end
287
- end
288
-
289
- context '#invalid?' do
290
- it 'returns false' do
291
- expect(status.invalid?).to be_falsey
292
- end
293
- end
294
-
295
- context '#error' do
296
- it 'returns nil' do
297
- expect(status.error).to be_nil
298
- end
299
- end
300
-
301
- context '#direct' do
302
- it 'raises an error' do
303
- expect { status.direct }.to raise_error(/from :redirected to :direct is forbidden/)
304
- end
305
- end
306
-
307
- context '#failed' do
308
- let!(:new_status) { status.failed(StandardError.new('some error')) }
309
- it 'changes the code to :failed' do
310
- expect(status.code).to eq :failed
311
- end
312
- it 'returns the status' do
313
- expect(new_status).to eq status
314
- end
315
- end
316
-
317
- context '#redirected' do
318
- let!(:new_status) { status.redirected('http://www.redirected.com') }
319
- it 'changes the code to :redirected' do
320
- expect(status.code).to eq :redirected
321
- end
322
- it 'returns the status' do
323
- expect(new_status).to eq status
324
- end
325
- end
326
-
327
- context '#too_many_redirects' do
328
- let!(:new_status) { status.too_many_redirects }
329
- it 'changes the code to :too_many_redirects' do
330
- expect(status.code).to eq :too_many_redirects
331
- end
332
- it 'returns the status' do
333
- expect(new_status).to eq status
334
- end
335
- end
336
-
337
- context '#unknown_host' do
338
- it 'changes the code to :unknown_host' do
339
- status.unknown_host
340
- expect(status.code).to eq :unknown_host
341
- end
342
- it 'returns the status' do
343
- expect(status.unknown_host).to eq status
344
- end
345
- end
346
-
347
- context '#to_s' do
348
- it 'returns the status representation' do
349
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com", "http://www.redirected.com"\], @code=:redirected>$}
350
- end
351
- end
352
- end
353
-
354
- # ------------------------------------------------------------------------------------------- too_many_redirects -----
355
- context 'when code is :too_many_redirects' do
356
- let(:uri) { 'http://www.example.com' }
357
- let(:status) { NDD::UrlChecker::Status.new(uri).too_many_redirects }
358
-
359
- context '#uri' do
360
- it 'returns the original URI' do
361
- expect(status.uri).to eq uri
362
- end
363
- end
364
-
365
- context '#uris' do
366
- it 'returns the original URI' do
367
- expect(status.uris).to eq [uri]
368
- end
369
- end
370
-
371
- context '#code' do
372
- it 'returns :too_many_redirects' do
373
- expect(status.code).to eq :too_many_redirects
374
- end
375
- end
376
-
377
- context '#valid?' do
378
- it 'returns false' do
379
- expect(status.valid?).to be_falsey
380
- end
381
- end
382
-
383
- context '#invalid?' do
384
- it 'returns true' do
385
- expect(status.invalid?).to be_truthy
386
- end
387
- end
388
-
389
- context '#error' do
390
- it 'returns nil' do
391
- expect(status.error).to be_nil
392
- end
393
- end
394
-
395
- context '#direct' do
396
- it 'raises an error' do
397
- expect { status.direct }.to raise_error(/from :too_many_redirects to :direct is forbidden/)
398
- end
399
- end
400
-
401
- context '#failed' do
402
- it 'raises an error' do
403
- expect { status.failed(StandardError.new('some error')) }.to raise_error(/from :too_many_redirects to :failed is forbidden/)
404
- end
405
- end
406
-
407
- context '#redirected' do
408
- it 'raises an error' do
409
- expect { status.redirected('http://www.redirected.com') }.to raise_error(/from :too_many_redirects to :redirected is forbidden/)
410
- end
411
- end
412
-
413
- context '#too_many_redirects' do
414
- it 'raises an error' do
415
- expect { status.too_many_redirects }.to raise_error(/from :too_many_redirects to :too_many_redirects is forbidden/)
416
- end
417
- end
418
-
419
- context '#unknown_host' do
420
- it 'raises an error' do
421
- expect { status.unknown_host }.to raise_error(/from :too_many_redirects to :unknown_host is forbidden/)
422
- end
423
- end
424
-
425
- context '#to_s' do
426
- it 'returns the status representation' do
427
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com"\], @code=:too_many_redirects>$}
428
- end
429
- end
430
- end
431
-
432
- # ------------------------------------------------------------------------------------------------- unknown_host -----
433
- context 'when code is :unknown_host' do
434
- let(:uri) { 'http://www.example.com' }
435
- let(:status) { NDD::UrlChecker::Status.new(uri).unknown_host }
436
-
437
- context '#uri' do
438
- it 'returns the original URI' do
439
- expect(status.uri).to eq uri
440
- end
441
- end
442
-
443
- context '#uris' do
444
- it 'returns the original URI' do
445
- expect(status.uris).to eq [uri]
446
- end
447
- end
448
-
449
- context '#code' do
450
- it 'returns :unknown_host' do
451
- expect(status.code).to eq :unknown_host
452
- end
453
- end
454
-
455
- context '#valid?' do
456
- it 'returns false' do
457
- expect(status.valid?).to be_falsey
458
- end
459
- end
460
-
461
- context '#invalid?' do
462
- it 'returns true' do
463
- expect(status.invalid?).to be_truthy
464
- end
465
- end
466
-
467
- context '#error' do
468
- it 'returns nil' do
469
- expect(status.error).to be_nil
470
- end
471
- end
472
-
473
- context '#direct' do
474
- it 'raises an error' do
475
- expect { status.direct }.to raise_error(/from :unknown_host to :direct is forbidden/)
476
- end
477
- end
478
-
479
- context '#failed' do
480
- it 'raises an error' do
481
- expect { status.failed(StandardError.new('some error')) }.to raise_error(/from :unknown_host to :failed is forbidden/)
482
- end
483
- end
484
-
485
- context '#redirected' do
486
- it 'raises an error' do
487
- expect { status.redirected('http://www.redirected.com') }.to raise_error(/from :unknown_host to :redirected is forbidden/)
488
- end
489
- end
490
-
491
- context '#too_many_redirects' do
492
- it 'raises an error' do
493
- expect { status.too_many_redirects }.to raise_error(/from :unknown_host to :too_many_redirects is forbidden/)
494
- end
495
- end
496
-
497
- context '#unknown_host' do
498
- it 'raises an error' do
499
- expect { status.unknown_host }.to raise_error(/from :unknown_host to :unknown_host is forbidden/)
500
- end
501
- end
502
-
503
- context '#to_s' do
504
- it 'returns the status representation' do
505
- expect(status.to_s).to match %r{^#<NDD::UrlChecker::Status:0[xX][0-9a-fA-F]+ @uris=\["http://www.example.com"\], @code=:unknown_host>$}
506
- end
507
- end
508
- end
509
-
510
- end