PageRankr 3.2.1 → 4.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.
@@ -10,6 +10,36 @@ RSpec::Matchers.define :be_in do |expected|
10
10
  end
11
11
  end
12
12
 
13
+ RSpec::Matchers.define :be_number do
14
+ match do |actual|
15
+ actual.is_a?(Numeric) && actual.send(@symbol, @expected)
16
+ end
17
+
18
+ chain :>= do |expected|
19
+ @symbol = :>=
20
+ @expected = expected
21
+ end
22
+
23
+ chain :> do |expected|
24
+ @symbol = :>
25
+ @expected = expected
26
+ end
27
+
28
+ chain :< do |expected|
29
+ @symbol = :<
30
+ @expected = expected
31
+ end
32
+
33
+ chain :<= do |expected|
34
+ @symbol = :<=
35
+ @expected = expected
36
+ end
37
+
38
+ failure_message_for_should do |actual|
39
+ "expected that #{actual.inspect} would be a number and #{@symbol} than #{@expected}"
40
+ end
41
+ end
42
+
13
43
  describe PageRankr do
14
44
  describe "#rank_trackers" do
15
45
  subject{ PageRankr.rank_trackers }
@@ -31,8 +61,8 @@ describe PageRankr do
31
61
  it{ should have_key(:alexa_global) }
32
62
  it{ should have_key(:google) }
33
63
 
34
- it{ subject[:alexa_us].should >= 1 }
35
- it{ subject[:alexa_global].should >= 1 }
64
+ it{ subject[:alexa_us].should be_number >= 1 }
65
+ it{ subject[:alexa_global].should be_number >= 1 }
36
66
  it{ subject[:google].should be_in(0..10) }
37
67
  end
38
68
 
@@ -74,7 +104,7 @@ describe PageRankr do
74
104
  it{ should have_key(tracker) }
75
105
 
76
106
  it "#{tracker} should have a value greater than zero" do
77
- subject[tracker].should > 0
107
+ subject[tracker].should be_number > 0
78
108
  end
79
109
  end
80
110
  end
@@ -115,7 +145,7 @@ describe PageRankr do
115
145
  it{ should have_key(tracker) }
116
146
 
117
147
  it "#{tracker} should have a value greater than zero" do
118
- subject[tracker].should > 0
148
+ subject[tracker].should be_number > 0
119
149
  end
120
150
  end
121
151
  end
@@ -140,7 +170,7 @@ describe PageRankr do
140
170
  describe "::Site" do
141
171
  [nil, '', 'batman.thedarkknight'].each do |value|
142
172
  it "should raise an exception when given #{value.inspect}" do
143
- expect{PageRankr::Site(value)}.should raise_error(PageRankr::DomainInvalid)
173
+ expect{PageRankr::Site(value)}.to raise_error(PageRankr::DomainInvalid)
144
174
  end
145
175
  end
146
176
  end
@@ -5,7 +5,19 @@ require 'vcr'
5
5
 
6
6
  VCR.configure do |c|
7
7
  c.cassette_library_dir = './spec/fixtures/vcr_cassettes'
8
- c.hook_into :typhoeus
8
+ c.hook_into :fakeweb
9
+ c.default_cassette_options = {
10
+ :record => :once,
11
+ :match_requests_on => [
12
+ :method,
13
+ VCR.request_matchers.uri_without_param(
14
+ :cli,
15
+ :dat,
16
+ :client,
17
+ :features
18
+ )
19
+ ]
20
+ }
9
21
  end
10
22
 
11
23
  RSpec.configure do |c|
metadata CHANGED
@@ -1,134 +1,202 @@
1
- --- !ruby/object:Gem::Specification
1
+ --- !ruby/object:Gem::Specification
2
2
  name: PageRankr
3
- version: !ruby/object:Gem::Version
4
- version: 3.2.1
3
+ version: !ruby/object:Gem::Version
4
+ hash: 63
5
5
  prerelease:
6
+ segments:
7
+ - 4
8
+ - 0
9
+ - 0
10
+ version: 4.0.0
6
11
  platform: ruby
7
- authors:
12
+ authors:
8
13
  - Allen Madsen
9
14
  autorequire:
10
15
  bindir: bin
11
16
  cert_chain: []
12
- date: 2012-05-15 00:00:00.000000000 Z
13
- dependencies:
14
- - !ruby/object:Gem::Dependency
17
+
18
+ date: 2012-12-18 00:00:00 Z
19
+ dependencies:
20
+ - !ruby/object:Gem::Dependency
15
21
  name: rake
16
- requirement: &70335135904380 !ruby/object:Gem::Requirement
22
+ version_requirements: &id001 !ruby/object:Gem::Requirement
17
23
  none: false
18
- requirements:
19
- - - ! '>='
20
- - !ruby/object:Gem::Version
21
- version: '0'
24
+ requirements:
25
+ - - ">="
26
+ - !ruby/object:Gem::Version
27
+ hash: 3
28
+ segments:
29
+ - 0
30
+ version: "0"
22
31
  type: :development
32
+ requirement: *id001
23
33
  prerelease: false
24
- version_requirements: *70335135904380
25
- - !ruby/object:Gem::Dependency
34
+ - !ruby/object:Gem::Dependency
26
35
  name: rspec
27
- requirement: &70335135903820 !ruby/object:Gem::Requirement
36
+ version_requirements: &id002 !ruby/object:Gem::Requirement
28
37
  none: false
29
- requirements:
30
- - - ! '>='
31
- - !ruby/object:Gem::Version
38
+ requirements:
39
+ - - ">="
40
+ - !ruby/object:Gem::Version
41
+ hash: 23
42
+ segments:
43
+ - 2
44
+ - 6
45
+ - 0
32
46
  version: 2.6.0
33
47
  type: :development
48
+ requirement: *id002
34
49
  prerelease: false
35
- version_requirements: *70335135903820
36
- - !ruby/object:Gem::Dependency
50
+ - !ruby/object:Gem::Dependency
37
51
  name: bundler
38
- requirement: &70335135903240 !ruby/object:Gem::Requirement
52
+ version_requirements: &id003 !ruby/object:Gem::Requirement
39
53
  none: false
40
- requirements:
41
- - - ! '>='
42
- - !ruby/object:Gem::Version
54
+ requirements:
55
+ - - ">="
56
+ - !ruby/object:Gem::Version
57
+ hash: 23
58
+ segments:
59
+ - 1
60
+ - 0
61
+ - 0
43
62
  version: 1.0.0
44
63
  type: :development
64
+ requirement: *id003
45
65
  prerelease: false
46
- version_requirements: *70335135903240
47
- - !ruby/object:Gem::Dependency
66
+ - !ruby/object:Gem::Dependency
48
67
  name: fuubar
49
- requirement: &70335135902780 !ruby/object:Gem::Requirement
68
+ version_requirements: &id004 !ruby/object:Gem::Requirement
50
69
  none: false
51
- requirements:
52
- - - ! '>='
53
- - !ruby/object:Gem::Version
70
+ requirements:
71
+ - - ">="
72
+ - !ruby/object:Gem::Version
73
+ hash: 29
74
+ segments:
75
+ - 0
76
+ - 0
77
+ - 1
54
78
  version: 0.0.1
55
79
  type: :development
80
+ requirement: *id004
56
81
  prerelease: false
57
- version_requirements: *70335135902780
58
- - !ruby/object:Gem::Dependency
82
+ - !ruby/object:Gem::Dependency
59
83
  name: vcr
60
- requirement: &70335135902400 !ruby/object:Gem::Requirement
84
+ version_requirements: &id005 !ruby/object:Gem::Requirement
61
85
  none: false
62
- requirements:
63
- - - ! '>='
64
- - !ruby/object:Gem::Version
65
- version: '0'
86
+ requirements:
87
+ - - ">="
88
+ - !ruby/object:Gem::Version
89
+ hash: 3
90
+ segments:
91
+ - 0
92
+ version: "0"
66
93
  type: :development
94
+ requirement: *id005
67
95
  prerelease: false
68
- version_requirements: *70335135902400
69
- - !ruby/object:Gem::Dependency
96
+ - !ruby/object:Gem::Dependency
97
+ name: fakeweb
98
+ version_requirements: &id006 !ruby/object:Gem::Requirement
99
+ none: false
100
+ requirements:
101
+ - - ">="
102
+ - !ruby/object:Gem::Version
103
+ hash: 3
104
+ segments:
105
+ - 0
106
+ version: "0"
107
+ type: :development
108
+ requirement: *id006
109
+ prerelease: false
110
+ - !ruby/object:Gem::Dependency
70
111
  name: nokogiri
71
- requirement: &70335135901720 !ruby/object:Gem::Requirement
112
+ version_requirements: &id007 !ruby/object:Gem::Requirement
72
113
  none: false
73
- requirements:
74
- - - ! '>='
75
- - !ruby/object:Gem::Version
114
+ requirements:
115
+ - - ">="
116
+ - !ruby/object:Gem::Version
117
+ hash: 5
118
+ segments:
119
+ - 1
120
+ - 4
121
+ - 1
76
122
  version: 1.4.1
77
123
  type: :runtime
124
+ requirement: *id007
78
125
  prerelease: false
79
- version_requirements: *70335135901720
80
- - !ruby/object:Gem::Dependency
126
+ - !ruby/object:Gem::Dependency
81
127
  name: json
82
- requirement: &70335135900740 !ruby/object:Gem::Requirement
128
+ version_requirements: &id008 !ruby/object:Gem::Requirement
83
129
  none: false
84
- requirements:
85
- - - ! '>='
86
- - !ruby/object:Gem::Version
130
+ requirements:
131
+ - - ">="
132
+ - !ruby/object:Gem::Version
133
+ hash: 11
134
+ segments:
135
+ - 1
136
+ - 4
137
+ - 6
87
138
  version: 1.4.6
88
139
  type: :runtime
140
+ requirement: *id008
89
141
  prerelease: false
90
- version_requirements: *70335135900740
91
- - !ruby/object:Gem::Dependency
142
+ - !ruby/object:Gem::Dependency
92
143
  name: public_suffix
93
- requirement: &70335135899360 !ruby/object:Gem::Requirement
144
+ version_requirements: &id009 !ruby/object:Gem::Requirement
94
145
  none: false
95
- requirements:
96
- - - ! '>='
97
- - !ruby/object:Gem::Version
146
+ requirements:
147
+ - - ">="
148
+ - !ruby/object:Gem::Version
149
+ hash: 59
150
+ segments:
151
+ - 0
152
+ - 9
153
+ - 0
98
154
  version: 0.9.0
99
155
  type: :runtime
156
+ requirement: *id009
100
157
  prerelease: false
101
- version_requirements: *70335135899360
102
- - !ruby/object:Gem::Dependency
103
- name: typhoeus
104
- requirement: &70335135898200 !ruby/object:Gem::Requirement
158
+ - !ruby/object:Gem::Dependency
159
+ name: httparty
160
+ version_requirements: &id010 !ruby/object:Gem::Requirement
105
161
  none: false
106
- requirements:
107
- - - ! '>='
108
- - !ruby/object:Gem::Version
109
- version: 0.2.1
162
+ requirements:
163
+ - - ">="
164
+ - !ruby/object:Gem::Version
165
+ hash: 59
166
+ segments:
167
+ - 0
168
+ - 9
169
+ - 0
170
+ version: 0.9.0
110
171
  type: :runtime
172
+ requirement: *id010
111
173
  prerelease: false
112
- version_requirements: *70335135898200
113
- - !ruby/object:Gem::Dependency
174
+ - !ruby/object:Gem::Dependency
114
175
  name: jsonpath
115
- requirement: &70335135897160 !ruby/object:Gem::Requirement
176
+ version_requirements: &id011 !ruby/object:Gem::Requirement
116
177
  none: false
117
- requirements:
118
- - - ! '>='
119
- - !ruby/object:Gem::Version
178
+ requirements:
179
+ - - ">="
180
+ - !ruby/object:Gem::Version
181
+ hash: 11
182
+ segments:
183
+ - 0
184
+ - 4
185
+ - 2
120
186
  version: 0.4.2
121
187
  type: :runtime
188
+ requirement: *id011
122
189
  prerelease: false
123
- version_requirements: *70335135897160
124
- description: Easy way to retrieve Google Page Rank, Alexa Rank, backlink counts, and
125
- index counts.
126
- email:
190
+ description: Easy way to retrieve Google Page Rank, Alexa Rank, backlink counts, and index counts.
191
+ email:
127
192
  - blatyo@gmail.com
128
193
  executables: []
194
+
129
195
  extensions: []
196
+
130
197
  extra_rdoc_files: []
131
- files:
198
+
199
+ files:
132
200
  - .gitignore
133
201
  - .rvmrc
134
202
  - .travis.yml
@@ -138,6 +206,7 @@ files:
138
206
  - PageRankr.gemspec
139
207
  - README.md
140
208
  - Rakefile
209
+ - lib/PageRankr.rb
141
210
  - lib/page_rankr.rb
142
211
  - lib/page_rankr/backlink.rb
143
212
  - lib/page_rankr/backlinks.rb
@@ -159,6 +228,7 @@ files:
159
228
  - lib/page_rankr/ranks/alexa_us.rb
160
229
  - lib/page_rankr/ranks/google.rb
161
230
  - lib/page_rankr/ranks/google/checksum.rb
231
+ - lib/page_rankr/request.rb
162
232
  - lib/page_rankr/site.rb
163
233
  - lib/page_rankr/tracker.rb
164
234
  - lib/page_rankr/trackers.rb
@@ -180,30 +250,40 @@ files:
180
250
  - spec/spec_helper.rb
181
251
  homepage: http://github.com/blatyo/page_rankr
182
252
  licenses: []
253
+
183
254
  post_install_message:
184
255
  rdoc_options: []
185
- require_paths:
256
+
257
+ require_paths:
186
258
  - lib
187
- required_ruby_version: !ruby/object:Gem::Requirement
259
+ required_ruby_version: !ruby/object:Gem::Requirement
188
260
  none: false
189
- requirements:
190
- - - ! '>='
191
- - !ruby/object:Gem::Version
192
- version: '0'
193
- required_rubygems_version: !ruby/object:Gem::Requirement
261
+ requirements:
262
+ - - ">="
263
+ - !ruby/object:Gem::Version
264
+ hash: 3
265
+ segments:
266
+ - 0
267
+ version: "0"
268
+ required_rubygems_version: !ruby/object:Gem::Requirement
194
269
  none: false
195
- requirements:
196
- - - ! '>='
197
- - !ruby/object:Gem::Version
270
+ requirements:
271
+ - - ">="
272
+ - !ruby/object:Gem::Version
273
+ hash: 23
274
+ segments:
275
+ - 1
276
+ - 3
277
+ - 6
198
278
  version: 1.3.6
199
279
  requirements: []
280
+
200
281
  rubyforge_project:
201
- rubygems_version: 1.8.17
282
+ rubygems_version: 1.8.24
202
283
  signing_key:
203
284
  specification_version: 3
204
- summary: Easy way to retrieve Google Page Rank, Alexa Rank, backlink counts, and index
205
- counts.
206
- test_files:
285
+ summary: Easy way to retrieve Google Page Rank, Alexa Rank, backlink counts, and index counts.
286
+ test_files:
207
287
  - spec/edge_cases_spec.rb
208
288
  - spec/fixtures/vcr_cassettes/alexa_ranks_edge_case_1.yml
209
289
  - spec/fixtures/vcr_cassettes/failure_backlinks.yml