webmaster_tools 0.1.0.rc1 → 0.1.0.rc2

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,21 @@
1
+ $:.unshift File.expand_path("../../lib", __FILE__)
2
+ require "webmaster_tools"
3
+
4
+ require 'vcr'
5
+
6
+ VCR.configure do |c|
7
+ c.cassette_library_dir = 'spec/fixtures/cassettes'
8
+ c.hook_into :webmock
9
+ c.configure_rspec_metadata!
10
+ c.preserve_exact_body_bytes do |http_message|
11
+ http_message.body.encoding.name == 'ASCII-8BIT' ||
12
+ !http_message.body.valid_encoding?
13
+ end
14
+ # c.allow_http_connections_when_no_cassette = true
15
+ end
16
+
17
+ RSpec.configure do |c|
18
+ # so we can use `:vcr` rather than `:vcr => true`;
19
+ # in RSpec 3 this will no longer be necessary.
20
+ c.treat_symbols_as_metadata_keys_with_true_values = true
21
+ end
@@ -0,0 +1,71 @@
1
+ require "spec_helper"
2
+
3
+ describe WebmasterTools do
4
+ let(:webmaster_tools) { WebmasterTools.new("tobi@testscloud.com", "12test34") }
5
+ let(:url) { "http://testscloud-sitemaps.s3-website-us-east-1.amazonaws.com/" }
6
+
7
+ describe "#login", :vcr do
8
+ it 'passes with correct username + password' do
9
+ expect do
10
+ webmaster_tools
11
+ end.to_not raise_error
12
+ end
13
+
14
+ it 'fails on wrong username + password' do
15
+ expect do
16
+ WebmasterTools.new("fake", "wrong")
17
+ end
18
+ end
19
+ end
20
+
21
+ describe "#dashboard", :vcr do
22
+ it 'gets dashboard' do
23
+ webmaster_tools.dashboard(url).first[:indexed_web] == 11773974
24
+ end
25
+
26
+ it 'gets dashboard' do
27
+ webmaster_tools.dashboard(url).last[:indexed_web] == 17114388
28
+ end
29
+ end
30
+
31
+ describe "#security_token", :vcr do
32
+ it 'gets security_token' do
33
+ webmaster_tools.security_token(url).should == "KgTEUnou385rO2xWpekOpXZ0rds:1331245126703"
34
+ end
35
+ end
36
+
37
+ describe "#crawl_info", :vcr do
38
+ it 'gets crawl_info' do
39
+ webmaster_tools.crawl_info(url).first[:indexed_web] == 11773974
40
+ end
41
+
42
+ it 'gets crawl_info' do
43
+ webmaster_tools.crawl_info(url).last[:indexed_web] == 17114388
44
+ end
45
+ end
46
+
47
+ describe "#crawl_stats", :vcr do
48
+ it 'gets crawl_stats' do
49
+ webmaster_tools.crawl_stats(url).should == {
50
+ :kilobytes => {:high => 653227, :avg => 216316, :low => 10711},
51
+ :milliseconds => {:high => 601, :avg => 409, :low => 300},
52
+ :pages => {:high => 1078, :avg => 265, :low => 13}
53
+ }
54
+ end
55
+ end
56
+
57
+ describe "#crawl_error_counts", :vcr do
58
+ let(:url) { "http://testscloud.com/" }
59
+
60
+ it 'gets crawl_error_counts' do
61
+ webmaster_tools.crawl_error_counts(url).should == {
62
+ :http => 499,
63
+ :in_sitemaps => 100000,
64
+ :not_found => 100000,
65
+ :"restricted_by_robots.txt" => 100000,
66
+ :soft_404s => 13,
67
+ :unreachable => 8189
68
+ }
69
+ end
70
+ end
71
+ end
@@ -19,7 +19,7 @@ Gem::Specification.new do |s|
19
19
  s.add_runtime_dependency *gem.split(' ')
20
20
  end
21
21
 
22
- %w(rake rspec).each do |gem|
22
+ %w(rake rspec vcr webmock).each do |gem|
23
23
  s.add_development_dependency *gem.split(' ')
24
24
  end
25
25
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: webmaster_tools
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.1.0.rc1
4
+ version: 0.1.0.rc2
5
5
  prerelease: 6
6
6
  platform: ruby
7
7
  authors:
@@ -9,11 +9,11 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2012-03-05 00:00:00.000000000Z
12
+ date: 2012-03-08 00:00:00.000000000Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: mechanize
16
- requirement: &70232871533880 !ruby/object:Gem::Requirement
16
+ requirement: &70180064527420 !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
19
  - - ! '>='
@@ -21,10 +21,10 @@ dependencies:
21
21
  version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70232871533880
24
+ version_requirements: *70180064527420
25
25
  - !ruby/object:Gem::Dependency
26
26
  name: rake
27
- requirement: &70232871533360 !ruby/object:Gem::Requirement
27
+ requirement: &70180064526860 !ruby/object:Gem::Requirement
28
28
  none: false
29
29
  requirements:
30
30
  - - ! '>='
@@ -32,10 +32,10 @@ dependencies:
32
32
  version: '0'
33
33
  type: :development
34
34
  prerelease: false
35
- version_requirements: *70232871533360
35
+ version_requirements: *70180064526860
36
36
  - !ruby/object:Gem::Dependency
37
37
  name: rspec
38
- requirement: &70232871532900 !ruby/object:Gem::Requirement
38
+ requirement: &70180064526400 !ruby/object:Gem::Requirement
39
39
  none: false
40
40
  requirements:
41
41
  - - ! '>='
@@ -43,7 +43,29 @@ dependencies:
43
43
  version: '0'
44
44
  type: :development
45
45
  prerelease: false
46
- version_requirements: *70232871532900
46
+ version_requirements: *70180064526400
47
+ - !ruby/object:Gem::Dependency
48
+ name: vcr
49
+ requirement: &70180064525940 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :development
56
+ prerelease: false
57
+ version_requirements: *70180064525940
58
+ - !ruby/object:Gem::Dependency
59
+ name: webmock
60
+ requirement: &70180064525480 !ruby/object:Gem::Requirement
61
+ none: false
62
+ requirements:
63
+ - - ! '>='
64
+ - !ruby/object:Gem::Version
65
+ version: '0'
66
+ type: :development
67
+ prerelease: false
68
+ version_requirements: *70180064525480
47
69
  description: Webmaster Tools extends the official API to give programmatically access
48
70
  to various crawl information and functions which are available via the Interface
49
71
  email:
@@ -60,6 +82,14 @@ files:
60
82
  - Rakefile
61
83
  - VERSION
62
84
  - lib/webmaster_tools.rb
85
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_error_counts/gets_crawl_error_counts.yml
86
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_info/gets_crawl_info.yml
87
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_stats/gets_crawl_stats.yml
88
+ - spec/fixtures/cassettes/WebmasterTools/_dashboard/gets_dashboard.yml
89
+ - spec/fixtures/cassettes/WebmasterTools/_login/passes_with_correct_username_password.yml
90
+ - spec/fixtures/cassettes/WebmasterTools/_security_token/gets_security_token.yml
91
+ - spec/spec_helper.rb
92
+ - spec/webmaster_tools_spec.rb
63
93
  - webmaster_tools.gemspec
64
94
  homepage: http://github.com/rngtng/webmaster_tools
65
95
  licenses: []
@@ -86,4 +116,12 @@ signing_key:
86
116
  specification_version: 3
87
117
  summary: Gives access to Webmaster Tools Interface data programmatically which is
88
118
  not provided by the official API
89
- test_files: []
119
+ test_files:
120
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_error_counts/gets_crawl_error_counts.yml
121
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_info/gets_crawl_info.yml
122
+ - spec/fixtures/cassettes/WebmasterTools/_crawl_stats/gets_crawl_stats.yml
123
+ - spec/fixtures/cassettes/WebmasterTools/_dashboard/gets_dashboard.yml
124
+ - spec/fixtures/cassettes/WebmasterTools/_login/passes_with_correct_username_password.yml
125
+ - spec/fixtures/cassettes/WebmasterTools/_security_token/gets_security_token.yml
126
+ - spec/spec_helper.rb
127
+ - spec/webmaster_tools_spec.rb