webmaster_tools 0.1.0.rc1 → 0.1.0.rc2

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,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