rdaneel 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
data/Rakefile CHANGED
@@ -10,7 +10,7 @@ begin
10
10
  gem.email = ["edgargonzalez@gmail.com", "anibalrojas@gmail.com"]
11
11
  gem.homepage = "http://github.com/hasmanydevelopers/RDaneel"
12
12
  gem.authors = ["Edgar Gonzalez", "Anibal Rojas"]
13
- gem.add_dependency("em-http-request", ">= 0.2.11")
13
+ gem.add_dependency("em-http-request", ">= 0.2.12")
14
14
  gem.add_dependency('robot_rules', '>= 0.9.3')
15
15
  gem.add_development_dependency "rspec", ">= 1.2.9"
16
16
  gem.add_development_dependency "cucumber", ">= 0.8.5"
@@ -23,25 +23,43 @@ rescue LoadError
23
23
  end
24
24
 
25
25
  require 'cucumber/rake/task'
26
- Cucumber::Rake::Task.new(:features) do |t|
26
+
27
+ desc "Run Cucumber features with RCov"
28
+ Cucumber::Rake::Task.new(:features_rcov) do |t|
27
29
  t.cucumber_opts = "--format pretty" # Any valid command line option can go here.
28
30
  t.rcov = true
29
31
  t.rcov_opts = %w{--exclude gems\/,spec\/,features\/ --aggregate coverage.data}
30
32
  end
31
33
 
34
+ Cucumber::Rake::Task.new(:features) do |t|
35
+ t.cucumber_opts = "--format pretty" # Any valid command line option can go here.
36
+ end
37
+
38
+
32
39
  require 'spec/rake/spectask'
33
- Spec::Rake::SpecTask.new(:spec) do |spec|
40
+ Spec::Rake::SpecTask.new(:spec_rcov) do |spec|
34
41
  spec.libs << 'lib' << 'spec'
35
- spec.spec_files = FileList['spec/**/*_spec.rb']
42
+ spec.spec_files = FileList['spec/*_spec.rb']
36
43
  spec.rcov = true
37
44
  spec.rcov_opts = %w{--exclude gems\/,spec\/,features\/ --aggregate coverage.data}
38
45
  end
39
46
 
40
- desc "Run both specs and features and generate aggregated coverage"
47
+ Spec::Rake::SpecTask.new(:spec) do |spec|
48
+ spec.libs << 'lib' << 'spec'
49
+ spec.spec_files = FileList['spec/*_spec.rb']
50
+ end
51
+
52
+ desc "Run optional specs (internet access)"
53
+ Spec::Rake::SpecTask.new(:spec_optional) do |spec|
54
+ spec.libs << 'lib' << 'spec'
55
+ spec.spec_files = FileList['spec/optional/*_spec.rb']
56
+ end
57
+
58
+ desc "Run both specs and features with RCov"
41
59
  task :all_tests do |t|
42
60
  rm "coverage.data" if File.exist?("coverage.data")
43
- Rake::Task['spec'].invoke
44
- Rake::Task["features"].invoke
61
+ Rake::Task['spec_rcov'].invoke
62
+ Rake::Task['features_rcov'].invoke
45
63
  end
46
64
 
47
65
  task :features => :check_dependencies
data/VERSION CHANGED
@@ -1 +1 @@
1
- 0.2.2
1
+ 0.2.3
@@ -139,7 +139,7 @@ Feature: get a url without using cache
139
139
  | 200 | /robots.txt |
140
140
  | 302 | /redirect_me |
141
141
 
142
- Scenario: the url to fetch is redirected to unreacheable host:port
142
+ Scenario: the url to fetch is redirected to unreacheable port
143
143
  Given a robots.txt that allows RDaneel
144
144
  And a HelloWorld url
145
145
  And a "/redirect_me" url that redirects 301 to "http://127.0.0.1:3211/unreacheable" url
@@ -153,3 +153,39 @@ Feature: get a url without using cache
153
153
  | 200 | /robots.txt |
154
154
  | 301 | /redirect_me |
155
155
 
156
+ Scenario: the url to fetch is redirected to unreacheable host
157
+ Given a robots.txt that allows RDaneel
158
+ And a HelloWorld url
159
+ And a "/redirect_me" url that redirects 301 to "http://wrongserver/unreacheable" url
160
+ When I get the "/redirect_me" url following a maximum of 3 redirects
161
+ Then I should get a "unable to resolve server address" error
162
+ And I should get 1 redirects
163
+ And The redirects sequence should be:
164
+ | http://127.0.0.1:3210/redirect_me |
165
+ And The requests sequence should be:
166
+ | status | path |
167
+ | 200 | /robots.txt |
168
+ | 301 | /redirect_me |
169
+
170
+ Scenario: the robots.txt for the url to fetch is redirected to unreacheable host:port
171
+ Given a "/robots.txt" url that redirects 301 to "http://127.0.0.1:3211/unreacheable" url
172
+ And a HelloWorld url
173
+ When I get the "/hello_world" url following a maximum of 3 redirects
174
+ Then I should get the content for HelloWorld url
175
+ And I should get 0 redirects
176
+ And The requests sequence should be:
177
+ | status | path |
178
+ | 301 | /robots.txt |
179
+ | 200 | /hello_world |
180
+
181
+ Scenario: the robots.txt for the url to fetch is redirected to unreacheable host
182
+ Given a "/robots.txt" url that redirects 301 to "http://wrongserver/unreacheable" url
183
+ And a HelloWorld url
184
+ When I get the "/hello_world" url following a maximum of 3 redirects
185
+ Then I should get the content for HelloWorld url
186
+ And I should get 0 redirects
187
+ And The requests sequence should be:
188
+ | status | path |
189
+ | 301 | /robots.txt |
190
+ | 200 | /hello_world |
191
+
@@ -210,19 +210,23 @@ class RDaneel
210
210
  def verbose(message, client = nil, *args)
211
211
  return unless @verbose
212
212
  message.each { |l| hashed_puts('*', l) }
213
- args.each do |a|
214
- case a
215
- when :status
216
- if client.response_header.status == 0
217
- hashed_puts('< Status:', '0 (timeout)')
218
- else
219
- hashed_puts('< Status:', client.response_header.status)
220
- end
221
- when :request # this is a options hash
222
- headers = client.options[:head]
223
- headers.each { |k,v| hashed_puts('>', "#{k}: #{v}") } if headers
224
- when :response # this is an array
225
- client.response_header.each { |r| hashed_puts('<', "#{r[0]}: #{r[1]}") }
213
+ if client
214
+ args.each do |a|
215
+ case a
216
+ when :status
217
+ if client.response_header.status == 0
218
+ hashed_puts('< Status:', '0 (timeout)')
219
+ else
220
+ hashed_puts('< Status:', client.response_header.status)
221
+ end
222
+ when :request # this is a options hash
223
+ if client.options
224
+ headers = client.options[:head]
225
+ headers.each { |k,v| hashed_puts('>', "#{k}: #{v}") } if headers
226
+ end
227
+ when :response # this is an array
228
+ client.response_header.each { |r| hashed_puts('<', "#{r[0]}: #{r[1]}") }
229
+ end
226
230
  end
227
231
  end
228
232
  end
@@ -0,0 +1,104 @@
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
+
3
+ describe "RDaneel when access a lot of urls in parallel for twitlonger.com" do
4
+
5
+ before(:each) do
6
+ @user_agent = 'Mozilla/5.0 (X11; U; Linux i686; en-US) AppleWebKit/534.7 (KHTML, like Gecko) Ubuntu/10.04 Chromium/7.0.513.0 Chrome/7.0.513.0 Safari/534.7'
7
+ @http_accept = 'application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8'
8
+ end
9
+
10
+ after(:each) do
11
+ RDaneel.robots_cache = nil
12
+ end
13
+
14
+ describe "and urls are not redirected" do
15
+
16
+ before(:each) do
17
+ @urls_file = File.expand_path(File.dirname(__FILE__) + '/fixtures/twitlonger_com_urls.txt')
18
+ end
19
+
20
+ it "should get the content for each url" do
21
+ RDaneel.robots_cache = {}
22
+ RDaneel.robots_cache["http://www.twitlonger.com/robots.txt"] = ""
23
+ successes = 0
24
+ failures = 0
25
+ urls_in_queue = 0
26
+ total_urls = 0
27
+ EM.run do
28
+ File.open(@urls_file).each do |url|
29
+ unless url.nil? || url.strip.empty?
30
+ r = RDaneel.new(url)
31
+ r.callback do
32
+ successes += 1
33
+ urls_in_queue -= 1
34
+ EM.stop if urls_in_queue == 0
35
+ end
36
+ r.errback do
37
+ failures += 1
38
+ urls_in_queue -= 1
39
+ EM.stop if urls_in_queue == 0
40
+ end
41
+ r.get(:redirects => 10, :timeout => 20,
42
+ :head => {
43
+ 'user-agent' => @user_agent,
44
+ 'http_accept' => @http_accept
45
+ }
46
+ )
47
+ urls_in_queue += 1
48
+ total_urls += 1
49
+ end
50
+ end
51
+ end
52
+ successes.should == total_urls
53
+ failures.should == 0
54
+ end
55
+
56
+ end
57
+
58
+ describe "and urls are redirected" do
59
+
60
+ before(:each) do
61
+ @urls_file = File.expand_path(File.dirname(__FILE__) + '/fixtures/tl_gd_urls.txt')
62
+ end
63
+
64
+ it "should get the content for each url" do
65
+ RDaneel.robots_cache = {}
66
+ RDaneel.robots_cache["http://www.twitlonger.com/robots.txt"] = ""
67
+ RDaneel.robots_cache["http://tl.gd/robots.txt"] = ""
68
+ successes = 0
69
+ failures = 0
70
+ urls_in_queue = 0
71
+ total_urls = 0
72
+ EM.run do
73
+ File.open(@urls_file).each do |url|
74
+ unless url.nil? || url.strip.empty?
75
+ r = RDaneel.new(url)
76
+ r.callback do
77
+ successes += 1
78
+ urls_in_queue -= 1
79
+ EM.stop if urls_in_queue == 0
80
+ end
81
+ r.errback do
82
+ failures += 1
83
+ urls_in_queue -= 1
84
+ EM.stop if urls_in_queue == 0
85
+ end
86
+ r.get(:redirects => 10, :timeout => 20,
87
+ :head => {
88
+ 'user-agent' => @user_agent,
89
+ 'http_accept' => @http_accept
90
+ }
91
+ )
92
+ urls_in_queue += 1
93
+ total_urls += 1
94
+ end
95
+ end
96
+ end
97
+ successes.should == total_urls
98
+ failures.should == 0
99
+ end
100
+
101
+ end
102
+
103
+ end
104
+
@@ -0,0 +1,146 @@
1
+ http://tl.gd/3fgffg
2
+ http://tl.gd/3fgffj
3
+ http://tl.gd/3f9hua
4
+ http://tl.gd/3fgfgn
5
+ http://tl.gd/3fgfgv
6
+ http://tl.gd/3fgfh9
7
+ http://tl.gd/3fgfh7
8
+ http://tl.gd/3fgfh3
9
+ http://tl.gd/3fgfh6
10
+ http://tl.gd/3fgffi
11
+ http://tl.gd/3fgfg7
12
+ http://tl.gd/3fgfhr
13
+ http://tl.gd/3fgfhq
14
+ http://tl.gd/3fgfhu
15
+ http://tl.gd/3fgfhm
16
+ http://tl.gd/3fgfga
17
+ http://tl.gd/3fgfi8
18
+ http://tl.gd/3fgfi3
19
+ http://tl.gd/3fgfie
20
+ http://tl.gd/3fgfib
21
+ http://tl.gd/3ffsvd
22
+ http://tl.gd/3fgfj3
23
+ http://tl.gd/3fgfj7
24
+ http://tl.gd/3fgfit
25
+ http://tl.gd/3fgfjc
26
+ http://tl.gd/3fgfja
27
+ http://tl.gd/3fgfln
28
+ http://tl.gd/3fgfll
29
+ http://tl.gd/3fgflv
30
+ http://tl.gd/3fgfm3
31
+ http://tl.gd/3fgflo
32
+ http://tl.gd/3fgfm4
33
+ http://tl.gd/3fgfmd
34
+ http://tl.gd/3bkn3t
35
+ http://tl.gd/3fgfmk
36
+ http://tl.gd/3fgfn0
37
+ http://tl.gd/3ffsuj
38
+ http://tl.gd/3fgfng
39
+ http://tl.gd/3fgfnh
40
+ http://tl.gd/3fgfnm
41
+ http://tl.gd/3fgfnj
42
+ http://tl.gd/3fgfnt
43
+ http://tl.gd/3fgfnu
44
+ http://tl.gd/3fgfnn
45
+ http://tl.gd/3fgfo1
46
+ http://tl.gd/3fgfo4
47
+ http://tl.gd/3fgfo3
48
+ http://tl.gd/3fgfof
49
+ http://tl.gd/3fgfok
50
+ http://tl.gd/3fgfom
51
+ http://tl.gd/3fgfor
52
+ http://tl.gd/3fgfop
53
+ http://tl.gd/3fgfpd
54
+ http://tl.gd/3fgfph
55
+ http://tl.gd/3fgfpg
56
+ http://tl.gd/3fgfp5
57
+ http://tl.gd/3fgfp8
58
+ http://tl.gd/3fgfjj
59
+ http://tl.gd/3fgfp7
60
+ http://tl.gd/3fgfr0
61
+ http://tl.gd/3fgfri
62
+ http://tl.gd/3fgfs6
63
+ http://tl.gd/3ff20b
64
+ http://tl.gd/3ffimm
65
+ http://tl.gd/3ff2ok
66
+ http://tl.gd/3fgfrs
67
+ http://tl.gd/3fgfs3
68
+ http://tl.gd/3fgfs2
69
+ http://tl.gd/3fgfsc
70
+ http://tl.gd/3fgfso
71
+ http://tl.gd/3fgfsn
72
+ http://tl.gd/3fgfst
73
+ http://tl.gd/3fgfta
74
+ http://tl.gd/3fgfte
75
+ http://tl.gd/3fgfrl
76
+ http://tl.gd/3fgftg
77
+ http://tl.gd/3fgfu8
78
+ http://tl.gd/3ffm98
79
+ http://tl.gd/3fgg08
80
+ http://tl.gd/3fgg0k
81
+ http://tl.gd/3fgg0e
82
+ http://tl.gd/3fgg06
83
+ http://tl.gd/3fa67d
84
+ http://tl.gd/3fgg0b
85
+ http://tl.gd/3fgg0q
86
+ http://tl.gd/3fgg0i
87
+ http://tl.gd/3fgg12
88
+ http://tl.gd/3fgfj0
89
+ http://tl.gd/3fgg1d
90
+ http://tl.gd/3fgg18
91
+ http://tl.gd/3fgg1g
92
+ http://tl.gd/3fgg20
93
+ http://tl.gd/3fgg1p
94
+ http://tl.gd/3fgg1t
95
+ http://tl.gd/3fgg24
96
+ http://tl.gd/3fgg25
97
+ http://tl.gd/3fgg2b
98
+ http://tl.gd/3fgg2a
99
+ http://tl.gd/3fgg2g
100
+ http://tl.gd/3fgg2f
101
+ http://tl.gd/3fgg1v
102
+ http://tl.gd/3fgg2l
103
+ http://tl.gd/3fgg2s
104
+ http://tl.gd/3fgg2u
105
+ http://tl.gd/3fgg3b
106
+ http://tl.gd/3fgg34
107
+ http://tl.gd/3fgg5j
108
+ http://tl.gd/3fgg59
109
+ http://tl.gd/3fgg5b
110
+ http://tl.gd/3fgg5c
111
+ http://tl.gd/3fgg5m
112
+ http://tl.gd/3fgg61
113
+ http://tl.gd/3fgg5r
114
+ http://tl.gd/3fgg67
115
+ http://tl.gd/3fgg6e
116
+ http://tl.gd/3fgg69
117
+ http://tl.gd/3fgg64
118
+ http://tl.gd/3fgg6q
119
+ http://tl.gd/3fgg73
120
+ http://tl.gd/3fgem2
121
+ http://tl.gd/3fgg74
122
+ http://tl.gd/3fgg7d
123
+ http://tl.gd/3fgg79
124
+ http://tl.gd/3fgg7e
125
+ http://tl.gd/3fgg7a
126
+ http://tl.gd/3fgg78
127
+ http://tl.gd/3fgg76
128
+ http://tl.gd/3fgg77
129
+ http://tl.gd/3fgg6f
130
+ http://tl.gd/3fgg7g
131
+ http://tl.gd/3fgg7c
132
+ http://tl.gd/3668o7
133
+ http://tl.gd/3fgg8i
134
+ http://tl.gd/3fgg8d
135
+ http://tl.gd/3fgcrq
136
+ http://tl.gd/3fgg8m
137
+ http://tl.gd/3fgg8e
138
+ http://tl.gd/3fggbv
139
+ http://tl.gd/3fggc0
140
+ http://tl.gd/3fggbs
141
+ http://tl.gd/3fggbp
142
+ http://tl.gd/3fgga0
143
+ http://tl.gd/3fggc3
144
+ http://tl.gd/3fggc1
145
+ http://tl.gd/3fggbt
146
+ http://tl.gd/3fgggk
@@ -0,0 +1,147 @@
1
+ http://www.twitlonger.com/show/3fgffg
2
+ http://www.twitlonger.com/show/3fgffj
3
+ http://www.twitlonger.com/show/3f9hua
4
+ http://www.twitlonger.com/show/3fgfgn
5
+ http://www.twitlonger.com/show/3fgfgv
6
+ http://www.twitlonger.com/show/3fgfh9
7
+ http://www.twitlonger.com/show/3fgfh7
8
+ http://www.twitlonger.com/show/3fgfh3
9
+ http://www.twitlonger.com/show/3fgfh6
10
+ http://www.twitlonger.com/show/3fgffi
11
+ http://www.twitlonger.com/show/3fgfg7
12
+ http://www.twitlonger.com/show/3fgfhr
13
+ http://www.twitlonger.com/show/3fgfhq
14
+ http://www.twitlonger.com/show/3fgfhu
15
+ http://www.twitlonger.com/show/3fgfhm
16
+ http://www.twitlonger.com/show/3fgfga
17
+ http://www.twitlonger.com/show/3fgfi8
18
+ http://www.twitlonger.com/show/3fgfi3
19
+ http://www.twitlonger.com/show/3fgfie
20
+ http://www.twitlonger.com/show/3fgfib
21
+ http://www.twitlonger.com/show/3ffsvd
22
+ http://www.twitlonger.com/show/3fgfj3
23
+ http://www.twitlonger.com/show/3fgfj7
24
+ http://www.twitlonger.com/show/3fgfit
25
+ http://www.twitlonger.com/show/3fgfjc
26
+ http://www.twitlonger.com/show/3fgfja
27
+ http://www.twitlonger.com/show/3fgfln
28
+ http://www.twitlonger.com/show/3fgfll
29
+ http://www.twitlonger.com/show/3fgflv
30
+ http://www.twitlonger.com/show/3fgfm3
31
+ http://www.twitlonger.com/show/3fgflo
32
+ http://www.twitlonger.com/show/3fgfm4
33
+ http://www.twitlonger.com/show/3fgfmd
34
+ http://www.twitlonger.com/show/3bkn3t
35
+ http://www.twitlonger.com/show/3fgfmk
36
+ http://www.twitlonger.com/show/3fgfn0
37
+ http://www.twitlonger.com/show/3ffsuj
38
+ http://www.twitlonger.com/show/3fgfng
39
+ http://www.twitlonger.com/show/3fgfnh
40
+ http://www.twitlonger.com/show/3fgfnm
41
+ http://www.twitlonger.com/show/3fgfnj
42
+ http://www.twitlonger.com/show/3fgfnt
43
+ http://www.twitlonger.com/show/3fgfnu
44
+ http://www.twitlonger.com/show/3fgfnn
45
+ http://www.twitlonger.com/show/3fgfo1
46
+ http://www.twitlonger.com/show/3fgfo4
47
+ http://www.twitlonger.com/show/3fgfo3
48
+ http://www.twitlonger.com/show/3fgfof
49
+ http://www.twitlonger.com/show/3fgfok
50
+ http://www.twitlonger.com/show/3fgfom
51
+ http://www.twitlonger.com/show/3fgfor
52
+ http://www.twitlonger.com/show/3fgfop
53
+ http://www.twitlonger.com/show/3fgfpd
54
+ http://www.twitlonger.com/show/3fgfph
55
+ http://www.twitlonger.com/show/3fgfpg
56
+ http://www.twitlonger.com/show/3fgfp5
57
+ http://www.twitlonger.com/show/3fgfp8
58
+ http://www.twitlonger.com/show/3fgfjj
59
+ http://www.twitlonger.com/show/3fgfp7
60
+ http://www.twitlonger.com/show/3fgfr0
61
+ http://www.twitlonger.com/show/3fgfri
62
+ http://www.twitlonger.com/show/3fgfs6
63
+ http://www.twitlonger.com/show/3ff20b
64
+ http://www.twitlonger.com/show/3ffimm
65
+ http://www.twitlonger.com/show/3ff2ok
66
+ http://www.twitlonger.com/show/3fgfrs
67
+ http://www.twitlonger.com/show/3fgfs3
68
+ http://www.twitlonger.com/show/3fgfs2
69
+ http://www.twitlonger.com/show/3fgfsc
70
+ http://www.twitlonger.com/show/3fgfso
71
+ http://www.twitlonger.com/show/3fgfsn
72
+ http://www.twitlonger.com/show/3fgfst
73
+ http://www.twitlonger.com/show/3fgfta
74
+ http://www.twitlonger.com/show/3fgfte
75
+ http://www.twitlonger.com/show/3fgfrl
76
+ http://www.twitlonger.com/show/3fgftg
77
+ http://www.twitlonger.com/show/3fgfu8
78
+ http://www.twitlonger.com/show/3ffm98
79
+ http://www.twitlonger.com/show/3fgg08
80
+ http://www.twitlonger.com/show/3fgg0k
81
+ http://www.twitlonger.com/show/3fgg0e
82
+ http://www.twitlonger.com/show/3fgg06
83
+ http://www.twitlonger.com/show/3fa67d
84
+ http://www.twitlonger.com/show/3fgg0b
85
+ http://www.twitlonger.com/show/3fgg0q
86
+ http://www.twitlonger.com/show/3fgg0i
87
+ http://www.twitlonger.com/show/3fgg12
88
+ http://www.twitlonger.com/show/3fgfj0
89
+ http://www.twitlonger.com/show/3fgg1d
90
+ http://www.twitlonger.com/show/3fgg18
91
+ http://www.twitlonger.com/show/3fgg1g
92
+ http://www.twitlonger.com/show/3fgg20
93
+ http://www.twitlonger.com/show/3fgg1p
94
+ http://www.twitlonger.com/show/3fgg1t
95
+ http://www.twitlonger.com/show/3fgg24
96
+ http://www.twitlonger.com/show/3fgg25
97
+ http://www.twitlonger.com/show/3fgg2b
98
+ http://www.twitlonger.com/show/3fgg2a
99
+ http://www.twitlonger.com/show/3fgg2g
100
+ http://www.twitlonger.com/show/3fgg2f
101
+ http://www.twitlonger.com/show/3fgg1v
102
+ http://www.twitlonger.com/show/3fgg2l
103
+ http://www.twitlonger.com/show/3fgg2s
104
+ http://www.twitlonger.com/show/3fgg2u
105
+ http://www.twitlonger.com/show/3fgg3b
106
+ http://www.twitlonger.com/show/3fgg34
107
+ http://www.twitlonger.com/show/3fgg5j
108
+ http://www.twitlonger.com/show/3fgg59
109
+ http://www.twitlonger.com/show/3fgg5b
110
+ http://www.twitlonger.com/show/3fgg5c
111
+ http://www.twitlonger.com/show/3fgg5m
112
+ http://www.twitlonger.com/show/3fgg61
113
+ http://www.twitlonger.com/show/3fgg5r
114
+ http://www.twitlonger.com/show/3fgg67
115
+ http://www.twitlonger.com/show/3fgg6e
116
+ http://www.twitlonger.com/show/3fgg69
117
+ http://www.twitlonger.com/show/3fgg64
118
+ http://www.twitlonger.com/show/3fgg6q
119
+ http://www.twitlonger.com/show/3fgg73
120
+ http://www.twitlonger.com/show/3fgem2
121
+ http://www.twitlonger.com/show/3fgg74
122
+ http://www.twitlonger.com/show/3fgg7d
123
+ http://www.twitlonger.com/show/3fgg79
124
+ http://www.twitlonger.com/show/3fgg7e
125
+ http://www.twitlonger.com/show/3fgg7a
126
+ http://www.twitlonger.com/show/3fgg78
127
+ http://www.twitlonger.com/show/3fgg76
128
+ http://www.twitlonger.com/show/3fgg77
129
+ http://www.twitlonger.com/show/3fgg6f
130
+ http://www.twitlonger.com/show/3fgg7g
131
+ http://www.twitlonger.com/show/3fgg7c
132
+ http://www.twitlonger.com/show/3668o7
133
+ http://www.twitlonger.com/show/3fgg8i
134
+ http://www.twitlonger.com/show/3fgg8d
135
+ http://www.twitlonger.com/show/3fgcrq
136
+ http://www.twitlonger.com/show/3fgg8m
137
+ http://www.twitlonger.com/show/3fgg8e
138
+ http://www.twitlonger.com/show/3fggbv
139
+ http://www.twitlonger.com/show/3fggc0
140
+ http://www.twitlonger.com/show/3fggbs
141
+ http://www.twitlonger.com/show/3fggbp
142
+ http://www.twitlonger.com/show/3fgga0
143
+ http://www.twitlonger.com/show/3fggc3
144
+ http://www.twitlonger.com/show/3fggc1
145
+ http://www.twitlonger.com/show/3fggbt
146
+ http://www.twitlonger.com/show/3fgggk
147
+
@@ -1,4 +1,4 @@
1
- require File.expand_path(File.dirname(__FILE__) + '/spec_helper')
1
+ require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')
2
2
 
3
3
  describe "RDaneel when the content is chunked (digg.com)" do
4
4
 
metadata CHANGED
@@ -5,8 +5,8 @@ version: !ruby/object:Gem::Version
5
5
  segments:
6
6
  - 0
7
7
  - 2
8
- - 2
9
- version: 0.2.2
8
+ - 3
9
+ version: 0.2.3
10
10
  platform: ruby
11
11
  authors:
12
12
  - Edgar Gonzalez
@@ -15,7 +15,7 @@ autorequire:
15
15
  bindir: bin
16
16
  cert_chain: []
17
17
 
18
- date: 2010-08-27 00:00:00 -04:30
18
+ date: 2010-09-13 00:00:00 -04:30
19
19
  default_executable:
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
@@ -28,8 +28,8 @@ dependencies:
28
28
  segments:
29
29
  - 0
30
30
  - 2
31
- - 11
32
- version: 0.2.11
31
+ - 12
32
+ version: 0.2.12
33
33
  type: :runtime
34
34
  version_requirements: *id001
35
35
  - !ruby/object:Gem::Dependency
@@ -113,10 +113,13 @@ files:
113
113
  - features/support/burrito.rb
114
114
  - features/support/env.rb
115
115
  - lib/rdaneel.rb
116
+ - spec/optional/concurrent_load_spec.rb
117
+ - spec/optional/fixtures/tl_gd_urls.txt
118
+ - spec/optional/fixtures/twitlonger_com_urls.txt
119
+ - spec/optional/streamed_content_spec.rb
116
120
  - spec/rdaneel_spec.rb
117
121
  - spec/spec.opts
118
122
  - spec/spec_helper.rb
119
- - spec/streamed_content_spec.rb
120
123
  has_rdoc: true
121
124
  homepage: http://github.com/hasmanydevelopers/RDaneel
122
125
  licenses: []
@@ -148,6 +151,7 @@ signing_key:
148
151
  specification_version: 3
149
152
  summary: Obey robots.txt on top of em-http-request (Asynchronous HTTP Client)
150
153
  test_files:
154
+ - spec/optional/concurrent_load_spec.rb
155
+ - spec/optional/streamed_content_spec.rb
151
156
  - spec/spec_helper.rb
152
- - spec/streamed_content_spec.rb
153
157
  - spec/rdaneel_spec.rb