name_checker 0.0.1

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.
Files changed (38) hide show
  1. data/.gitignore +21 -0
  2. data/.rspec +1 -0
  3. data/Gemfile +4 -0
  4. data/LICENSE +22 -0
  5. data/README.md +66 -0
  6. data/Rakefile +2 -0
  7. data/lib/name_checker.rb +27 -0
  8. data/lib/name_checker/availability.rb +39 -0
  9. data/lib/name_checker/configuration.rb +30 -0
  10. data/lib/name_checker/facebook_checker.rb +37 -0
  11. data/lib/name_checker/logging.rb +26 -0
  12. data/lib/name_checker/net_checker.rb +15 -0
  13. data/lib/name_checker/railties.rb +7 -0
  14. data/lib/name_checker/robo_whois_checker.rb +61 -0
  15. data/lib/name_checker/twitter_checker.rb +67 -0
  16. data/lib/name_checker/version.rb +3 -0
  17. data/name_checker.gemspec +25 -0
  18. data/spec/fixtures/vcr_cassettes/facebook/available.yml +44 -0
  19. data/spec/fixtures/vcr_cassettes/facebook/unavailable.yml +42 -0
  20. data/spec/fixtures/vcr_cassettes/facebook/weird_chars.yml +42 -0
  21. data/spec/fixtures/vcr_cassettes/robo_whois/available.yml +48 -0
  22. data/spec/fixtures/vcr_cassettes/robo_whois/credits.yml +48 -0
  23. data/spec/fixtures/vcr_cassettes/robo_whois/unavailable.yml +48 -0
  24. data/spec/fixtures/vcr_cassettes/twitter/available.yml +55 -0
  25. data/spec/fixtures/vcr_cassettes/twitter/rate_limit.yml +61 -0
  26. data/spec/fixtures/vcr_cassettes/twitter/suspended.yml +55 -0
  27. data/spec/fixtures/vcr_cassettes/twitter/unavailable.yml +61 -0
  28. data/spec/name_checker/availability_spec.rb +39 -0
  29. data/spec/name_checker/facebook_checker_spec.rb +54 -0
  30. data/spec/name_checker/net_checker_spec.rb +26 -0
  31. data/spec/name_checker/robo_whois_checker_spec.rb +59 -0
  32. data/spec/name_checker/twitter_checker_spec.rb +72 -0
  33. data/spec/name_checker/whois_checker.rb +10 -0
  34. data/spec/name_checker/whois_checker_spec.rb +33 -0
  35. data/spec/name_checker_spec.rb +24 -0
  36. data/spec/spec_helper.rb +27 -0
  37. data/spec/support/helpers.rb +12 -0
  38. metadata +149 -0
@@ -0,0 +1,61 @@
1
+ ---
2
+ http_interactions:
3
+ - request:
4
+ method: get
5
+ uri: http://api.twitter.com/1/users/show.json?screen_name=m
6
+ body:
7
+ encoding: US-ASCII
8
+ string: ''
9
+ headers: {}
10
+ response:
11
+ status:
12
+ code: 200
13
+ message: OK
14
+ headers:
15
+ X-Ratelimit-Limit:
16
+ - '150'
17
+ X-Ratelimit-Remaining:
18
+ - '135'
19
+ X-Ratelimit-Reset:
20
+ - '1337090175'
21
+ X-Ratelimit-Class:
22
+ - api
23
+ Content-Type:
24
+ - application/json;charset=utf-8
25
+ Last-Modified:
26
+ - Tue, 15 May 2012 13:47:05 GMT
27
+ Expires:
28
+ - Tue, 31 Mar 1981 05:00:00 GMT
29
+ Pragma:
30
+ - no-cache
31
+ Cache-Control:
32
+ - no-cache, no-store, must-revalidate, pre-check=0, post-check=0
33
+ Set-Cookie:
34
+ - guest_id="v1:133708962582792815";Expires=Thu, 15-May-14 13:47:05 GMT;Path=/;Domain=.twitter.com
35
+ - k=46.7.124.72.ff16c3e05efca4d7; path=/; expires=Tue, 22-May-2012 13:47:05
36
+ UTC; domain=.api.twitter.com; httponly
37
+ Status:
38
+ - 200 OK
39
+ X-Transaction:
40
+ - b566d4d13fd85283
41
+ X-Frame-Options:
42
+ - SAMEORIGIN
43
+ Date:
44
+ - Tue, 15 May 2012 13:47:05 GMT
45
+ Content-Length:
46
+ - '2020'
47
+ Server:
48
+ - tfe
49
+ body:
50
+ encoding: US-ASCII
51
+ string: ! '{"id":7998822,"id_str":"7998822","name":"Mark Douglass","screen_name":"m","location":"Bad
52
+ Kreuznach, Germany","description":"Sorry if I don''t reply to @mentions -
53
+ they are 99.9% incorrect and I''ve basically stopped checking them. \r\nPS:
54
+ Not interested in selling @m or @md - sorry!","url":"http:\/\/friendfeed.com\/mdoug","protected":false,"followers_count":17377,"friends_count":1480,"listed_count":195,"created_at":"Mon
55
+ Aug 06 18:15:01 +0000 2007","favourites_count":5149,"utc_offset":3600,"time_zone":"Berlin","geo_enabled":true,"verified":false,"statuses_count":3577,"lang":"en","status":{"created_at":"Sat
56
+ May 12 12:34:07 +0000 2012","id":201289149536419840,"id_str":"201289149536419840","text":"I
57
+ was just awarded the \"TV Elite\" badge at http:\/\/t.co\/zAAbEZ39","source":"\u003ca
58
+ href=\"http:\/\/gomiso.com\" rel=\"nofollow\"\u003eMiso\u003c\/a\u003e","truncated":false,"in_reply_to_status_id":null,"in_reply_to_status_id_str":null,"in_reply_to_user_id":null,"in_reply_to_user_id_str":null,"in_reply_to_screen_name":null,"geo":null,"coordinates":null,"place":null,"contributors":null,"retweet_count":0,"favorited":false,"retweeted":false,"possibly_sensitive":false},"contributors_enabled":false,"is_translator":false,"profile_background_color":"E4F2F5","profile_background_image_url":"http:\/\/a0.twimg.com\/profile_background_images\/3055488\/2364_body2.jpg","profile_background_image_url_https":"https:\/\/si0.twimg.com\/profile_background_images\/3055488\/2364_body2.jpg","profile_background_tile":false,"profile_image_url":"http:\/\/a0.twimg.com\/profile_images\/1702184506\/m_normal.jpg","profile_image_url_https":"https:\/\/si0.twimg.com\/profile_images\/1702184506\/m_normal.jpg","profile_link_color":"2D506C","profile_sidebar_border_color":"6386A3","profile_sidebar_fill_color":"E4F2F5","profile_text_color":"0A2817","profile_use_background_image":true,"show_all_inline_media":false,"default_profile":false,"default_profile_image":false,"following":null,"follow_request_sent":null,"notifications":null}'
59
+ http_version:
60
+ recorded_at: Tue, 15 May 2012 13:47:05 GMT
61
+ recorded_with: VCR 2.1.1
@@ -0,0 +1,39 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::Availability do
4
+ describe "available?" do
5
+ it "should return true if available" do
6
+ availability = klass.new('net', true)
7
+ availability.should be_available
8
+ end
9
+
10
+ it "should return false otherwise" do
11
+ availability = klass.new('net', false)
12
+ availability.should_not be_available
13
+ end
14
+ end
15
+
16
+ describe "unavailable?" do
17
+ it "should return true if unavailable" do
18
+ availability = klass.new('net', false)
19
+ availability.should be_unavailable
20
+ end
21
+
22
+ it "should return false otherwise" do
23
+ availability = klass.new('net', true)
24
+ availability.should_not be_unavailable
25
+ end
26
+ end
27
+
28
+ describe "unknown?" do
29
+ it "should return true if unknown" do
30
+ availability = klass.new('net', nil)
31
+ availability.should be_unknown
32
+ end
33
+
34
+ it "should return false otherwise" do
35
+ availability = klass.new('net', true)
36
+ availability.should_not be_unknown
37
+ end
38
+ end
39
+ end
@@ -0,0 +1,54 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::FacebookChecker, "check" do
4
+ let(:fixtures_dir) { "facebook" }
5
+ subject { NameChecker::FacebookChecker }
6
+
7
+ def fixture_path(name)
8
+ "#{fixtures_dir}/#{name}"
9
+ end
10
+
11
+ it "should return negative if the name is too short" do
12
+ VCR.use_cassette(fixture_path("short")) do
13
+ availability = subject.check("jsda")
14
+ availability.should be_unavailable
15
+ availability.service.should == "facebook"
16
+ end
17
+ end
18
+
19
+ it "should return positive the name is available" do
20
+ VCR.use_cassette(fixture_path("available")) do
21
+ availability = subject.check("sdfjksdh")
22
+ availability.should be_available
23
+ end
24
+ end
25
+
26
+ it "should return negtive if the name is taken" do
27
+ VCR.use_cassette(fixture_path("unavailable")) do
28
+ availability = subject.check("davidtuite")
29
+ availability.should be_unavailable
30
+ end
31
+ end
32
+
33
+ it "should non choke on weird chars" do
34
+ VCR.use_cassette(fixture_path("weird_chars")) do
35
+ availability = subject.check("rememberly")
36
+ availability.should be_unavailable
37
+ end
38
+ end
39
+
40
+ context "server returns 500 response" do
41
+ let(:response) { stub(code: 500, headers: {}) }
42
+ before { subject.stub(:get) { response } }
43
+
44
+ it "should return unknown if there is an error" do
45
+ availability = subject.check("dsjfh")
46
+ availability.should be_unknown
47
+ end
48
+
49
+ it "should log the error if there is a server error" do
50
+ Logging.logger.should_receive(:warn)
51
+ subject.check("kdfjss")
52
+ end
53
+ end
54
+ end
@@ -0,0 +1,26 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::NetChecker do
4
+ subject { NameChecker::NetChecker }
5
+
6
+ describe "check" do
7
+ let(:host_name) { "apple" }
8
+ let(:tld) { ".com" }
9
+
10
+ # NOTE: This test assumes there is a ROBO_WHOIS_API_KEY
11
+ # set in spec/shec_helper.rb
12
+ it "should hit the RoboWhoisChecker if there is an api key" do
13
+ NameChecker::RoboWhoisChecker.should_receive(:check)
14
+ .with(host_name + tld)
15
+ subject.check(host_name, tld)
16
+ end
17
+
18
+ it "should hit the WhoisChecker if there is no api key" do
19
+ NameChecker.configuration.stub(:robo_whois_api_key) { nil }
20
+
21
+ NameChecker::WhoisChecker.should_receive(:check)
22
+ .with(host_name + tld)
23
+ subject.check(host_name, tld)
24
+ end
25
+ end
26
+ end
@@ -0,0 +1,59 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::RoboWhoisChecker, "check" do
4
+ let(:fixtures_dir) { "robo_whois" }
5
+ subject { NameChecker::RoboWhoisChecker }
6
+
7
+ def fixture_path(name)
8
+ "#{fixtures_dir}/#{name}"
9
+ end
10
+
11
+ it "should raise an error if there is no api key"
12
+
13
+ it "should tell if the domain is unavailable" do
14
+ VCR.use_cassette(fixture_path("unavailable")) do
15
+ availability = subject.check("apple.com")
16
+ availability.should be_unavailable
17
+ availability.service.should == 'robo_whois'
18
+ end
19
+ end
20
+
21
+ it "should tell if the domain is available" do
22
+ available_domain = "fwekjfkewfhwefhhfjcjksdjklka.com"
23
+ VCR.use_cassette(fixture_path("available")) do
24
+ availability = subject.check(available_domain)
25
+ availability.should be_available
26
+ end
27
+ end
28
+
29
+ it "should log if the remaining credits are below 50" do
30
+ VCR.use_cassette(fixture_path("credits")) do
31
+ Logging.logger.should_receive(:warn)
32
+ availability = subject.check("apple.ly")
33
+ end
34
+ end
35
+
36
+ it "should not log if the remaining credits are above 50" do
37
+ VCR.use_cassette(fixture_path("unavailable")) do
38
+ Logging.logger.should_not_receive(:warn)
39
+ availability = subject.check("apple.com")
40
+ end
41
+ end
42
+
43
+ # NOTE: These don't hit the network
44
+ context "server returns non-200 status" do
45
+ let(:host) { "apple.com" }
46
+ let(:response) { stub(headers: {}, code: 500) }
47
+ before { subject.stub(:get) { response } }
48
+
49
+ it "should log" do
50
+ Logging.logger.should_receive(:warn)
51
+ subject.check(host)
52
+ end
53
+
54
+ it "should return 'unknown' availability" do
55
+ availability = subject.check(host)
56
+ availability.should be_unknown
57
+ end
58
+ end
59
+ end
@@ -0,0 +1,72 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::TwitterChecker, "check" do
4
+ let(:fixtures_dir) { "twitter" }
5
+ subject { NameChecker::TwitterChecker }
6
+
7
+ def fixture_path(name)
8
+ "#{fixtures_dir}/#{name}"
9
+ end
10
+
11
+ it "should return positive the name is available" do
12
+ VCR.use_cassette(fixture_path("available")) do
13
+ availability = subject.check("sdfjksdh")
14
+ availability.should be_available
15
+ end
16
+ end
17
+
18
+ it "should return negative if the name is too long" do
19
+ VCR.use_cassette(fixture_path("long")) do
20
+ long_name = "sjkhdfkjsdhkjfhksjdfhkjsdsjhfkjhs"
21
+ availability = subject.check(long_name)
22
+ availability.should be_unavailable
23
+ end
24
+ end
25
+
26
+ it "should return negtive if the name is taken" do
27
+ VCR.use_cassette(fixture_path("unavailable")) do
28
+ availability = subject.check("m")
29
+ availability.should be_unavailable
30
+ end
31
+ end
32
+
33
+ describe "rate limit handling" do
34
+ it "should log if the ratelimit-remaining if it is below 20" do
35
+ VCR.use_cassette(fixture_path("rate_limit")) do
36
+ Logging.logger.should_receive(:warn)
37
+ subject.check("m")
38
+ end
39
+ end
40
+
41
+ it "should not log if the ratelimit-remaining if it is above 20" do
42
+ VCR.use_cassette(fixture_path("unavailable")) do
43
+ Logging.logger.should_not_receive(:warn)
44
+ subject.check("m")
45
+ end
46
+ end
47
+ end
48
+
49
+ context "server returns 500 response" do
50
+ let(:response) { stub(code: 500, headers: {}) }
51
+ before { subject.stub(:get) { response } }
52
+
53
+ it "should return unknown if there is an error" do
54
+ availability = subject.check("dsjfh")
55
+ availability.should be_unknown
56
+ end
57
+
58
+ it "should log the error if there is a server error" do
59
+ # Rails.logger.should_receive(:warn)
60
+ subject.check("kdfj")
61
+ end
62
+ end
63
+
64
+ context "user has been suspenved" do
65
+ it "should return negative" do
66
+ VCR.use_cassette(fixture_path("suspended")) do
67
+ availability = subject.check("apple")
68
+ availability.should be_unavailable
69
+ end
70
+ end
71
+ end
72
+ end
@@ -0,0 +1,10 @@
1
+ module NameChecker
2
+ class WhoisChecker
3
+ @service_name = :whois
4
+ def self.check(host, options = {})
5
+ # INFO: http://bit.ly/KYpzaj
6
+ res = Whois.available?(host)
7
+ Availability.new(@service_name, res)
8
+ end
9
+ end
10
+ end
@@ -0,0 +1,33 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker::WhoisChecker do
4
+ let(:fixtures_dir) { "whois" }
5
+ subject { NameChecker::WhoisChecker }
6
+
7
+ def fixture_path(name)
8
+ "#{fixtures_dir}/#{name}"
9
+ end
10
+
11
+ it "should tell if the domain is available" do
12
+ VCR.use_cassette(fixture_path('available')) do
13
+ availability = subject.check("dsjfdfjdjfd.com")
14
+ availability.should be_available
15
+ availability.service.should == 'whois'
16
+ end
17
+ end
18
+
19
+ it "should tell if the domain is unavailable" do
20
+ VCR.use_cassette(fixture_path("unavailable")) do
21
+ availability = subject.check("apple.com")
22
+ availability.should be_unavailable
23
+ end
24
+ end
25
+
26
+ it "should tell if the whois doesn't work" do
27
+ Whois.stub(:available?) { nil }
28
+ VCR.use_cassette(fixture_path("unknown")) do
29
+ availability = subject.check("apple.com")
30
+ availability.should be_unknown
31
+ end
32
+ end
33
+ end
@@ -0,0 +1,24 @@
1
+ require "spec_helper"
2
+
3
+ describe NameChecker do
4
+ describe "check" do
5
+ let(:text) { "hello" }
6
+ subject { NameChecker }
7
+
8
+ it "should check the twitter service" do
9
+ NameChecker::TwitterChecker.should_receive(:check).with(text)
10
+ subject.check(text, 'twitter')
11
+ end
12
+
13
+ it "shoud check the facebook service" do
14
+ NameChecker::FacebookChecker.should_receive(:check).with(text)
15
+ subject.check(text, 'facebook')
16
+ end
17
+
18
+ it "shoud check the robo whois service" do
19
+ service_name = 'com'
20
+ NameChecker::NetChecker.should_receive(:check).with(text, service_name)
21
+ subject.check(text, service_name)
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,27 @@
1
+ require "name_checker"
2
+ require 'vcr'
3
+
4
+ unless defined?(SPEC_ROOT)
5
+ SPEC_ROOT = File.expand_path("../", __FILE__)
6
+ end
7
+
8
+ # Add your robo whois api key here if you have one:
9
+ ROBO_WHOIS_API_KEY = nil
10
+
11
+ # Requires supporting ruby files with custom matchers and macros, etc,
12
+ # in spec/support/ and its subdirectories.
13
+ Dir[File.join(SPEC_ROOT, "support/**/*.rb")].each { |f| require f }
14
+
15
+ VCR.configure do |c|
16
+ c.cassette_library_dir = 'spec/fixtures/vcr_cassettes'
17
+ c.hook_into :webmock # or :fakeweb
18
+ c.ignore_hosts '127.0.0.1', 'localhost'
19
+
20
+ if ROBO_WHOIS_API_KEY
21
+ c.filter_sensitive_data('<ROBO_WHOIS_API_KEY>') { ROBO_WHOIS_API_KEY }
22
+ end
23
+ end
24
+
25
+ NameChecker.configure do |config|
26
+ config.robo_whois_api_key = ROBO_WHOIS_API_KEY if ROBO_WHOIS_API_KEY
27
+ end
@@ -0,0 +1,12 @@
1
+ module RSpecSupportSpecHelpers
2
+ # Gets the currently described class.
3
+ # Conversely to +subject+, it returns the class
4
+ # instead of an instance.
5
+ def klass
6
+ described_class
7
+ end
8
+ end
9
+
10
+ RSpec.configure do |config|
11
+ config.include RSpecSupportSpecHelpers
12
+ end
metadata ADDED
@@ -0,0 +1,149 @@
1
+ --- !ruby/object:Gem::Specification
2
+ name: name_checker
3
+ version: !ruby/object:Gem::Version
4
+ version: 0.0.1
5
+ prerelease:
6
+ platform: ruby
7
+ authors:
8
+ - David Tuite
9
+ autorequire:
10
+ bindir: bin
11
+ cert_chain: []
12
+ date: 2012-05-15 00:00:00.000000000 Z
13
+ dependencies:
14
+ - !ruby/object:Gem::Dependency
15
+ name: rspec
16
+ requirement: &70168530643800 !ruby/object:Gem::Requirement
17
+ none: false
18
+ requirements:
19
+ - - ! '>='
20
+ - !ruby/object:Gem::Version
21
+ version: '0'
22
+ type: :development
23
+ prerelease: false
24
+ version_requirements: *70168530643800
25
+ - !ruby/object:Gem::Dependency
26
+ name: vcr
27
+ requirement: &70168530642960 !ruby/object:Gem::Requirement
28
+ none: false
29
+ requirements:
30
+ - - ! '>='
31
+ - !ruby/object:Gem::Version
32
+ version: '0'
33
+ type: :development
34
+ prerelease: false
35
+ version_requirements: *70168530642960
36
+ - !ruby/object:Gem::Dependency
37
+ name: httparty
38
+ requirement: &70168530642080 !ruby/object:Gem::Requirement
39
+ none: false
40
+ requirements:
41
+ - - ! '>='
42
+ - !ruby/object:Gem::Version
43
+ version: '0'
44
+ type: :runtime
45
+ prerelease: false
46
+ version_requirements: *70168530642080
47
+ - !ruby/object:Gem::Dependency
48
+ name: whois
49
+ requirement: &70168530640740 !ruby/object:Gem::Requirement
50
+ none: false
51
+ requirements:
52
+ - - ! '>='
53
+ - !ruby/object:Gem::Version
54
+ version: '0'
55
+ type: :runtime
56
+ prerelease: false
57
+ version_requirements: *70168530640740
58
+ description: ! ' NameChecker is a Ruby library for checking the availability of
59
+ a word across various TLDs and social networks. It was created to power http://domiy.com.
60
+
61
+ '
62
+ email:
63
+ - dtuite@gmail.com
64
+ executables: []
65
+ extensions: []
66
+ extra_rdoc_files: []
67
+ files:
68
+ - .gitignore
69
+ - .rspec
70
+ - Gemfile
71
+ - LICENSE
72
+ - README.md
73
+ - Rakefile
74
+ - lib/name_checker.rb
75
+ - lib/name_checker/availability.rb
76
+ - lib/name_checker/configuration.rb
77
+ - lib/name_checker/facebook_checker.rb
78
+ - lib/name_checker/logging.rb
79
+ - lib/name_checker/net_checker.rb
80
+ - lib/name_checker/railties.rb
81
+ - lib/name_checker/robo_whois_checker.rb
82
+ - lib/name_checker/twitter_checker.rb
83
+ - lib/name_checker/version.rb
84
+ - name_checker.gemspec
85
+ - spec/fixtures/vcr_cassettes/facebook/available.yml
86
+ - spec/fixtures/vcr_cassettes/facebook/unavailable.yml
87
+ - spec/fixtures/vcr_cassettes/facebook/weird_chars.yml
88
+ - spec/fixtures/vcr_cassettes/robo_whois/available.yml
89
+ - spec/fixtures/vcr_cassettes/robo_whois/credits.yml
90
+ - spec/fixtures/vcr_cassettes/robo_whois/unavailable.yml
91
+ - spec/fixtures/vcr_cassettes/twitter/available.yml
92
+ - spec/fixtures/vcr_cassettes/twitter/rate_limit.yml
93
+ - spec/fixtures/vcr_cassettes/twitter/suspended.yml
94
+ - spec/fixtures/vcr_cassettes/twitter/unavailable.yml
95
+ - spec/name_checker/availability_spec.rb
96
+ - spec/name_checker/facebook_checker_spec.rb
97
+ - spec/name_checker/net_checker_spec.rb
98
+ - spec/name_checker/robo_whois_checker_spec.rb
99
+ - spec/name_checker/twitter_checker_spec.rb
100
+ - spec/name_checker/whois_checker.rb
101
+ - spec/name_checker/whois_checker_spec.rb
102
+ - spec/name_checker_spec.rb
103
+ - spec/spec_helper.rb
104
+ - spec/support/helpers.rb
105
+ homepage: ''
106
+ licenses: []
107
+ post_install_message:
108
+ rdoc_options: []
109
+ require_paths:
110
+ - lib
111
+ required_ruby_version: !ruby/object:Gem::Requirement
112
+ none: false
113
+ requirements:
114
+ - - ! '>='
115
+ - !ruby/object:Gem::Version
116
+ version: '0'
117
+ required_rubygems_version: !ruby/object:Gem::Requirement
118
+ none: false
119
+ requirements:
120
+ - - ! '>='
121
+ - !ruby/object:Gem::Version
122
+ version: '0'
123
+ requirements: []
124
+ rubyforge_project:
125
+ rubygems_version: 1.8.16
126
+ signing_key:
127
+ specification_version: 3
128
+ summary: Check the availability of a name on various services.
129
+ test_files:
130
+ - spec/fixtures/vcr_cassettes/facebook/available.yml
131
+ - spec/fixtures/vcr_cassettes/facebook/unavailable.yml
132
+ - spec/fixtures/vcr_cassettes/facebook/weird_chars.yml
133
+ - spec/fixtures/vcr_cassettes/robo_whois/available.yml
134
+ - spec/fixtures/vcr_cassettes/robo_whois/credits.yml
135
+ - spec/fixtures/vcr_cassettes/robo_whois/unavailable.yml
136
+ - spec/fixtures/vcr_cassettes/twitter/available.yml
137
+ - spec/fixtures/vcr_cassettes/twitter/rate_limit.yml
138
+ - spec/fixtures/vcr_cassettes/twitter/suspended.yml
139
+ - spec/fixtures/vcr_cassettes/twitter/unavailable.yml
140
+ - spec/name_checker/availability_spec.rb
141
+ - spec/name_checker/facebook_checker_spec.rb
142
+ - spec/name_checker/net_checker_spec.rb
143
+ - spec/name_checker/robo_whois_checker_spec.rb
144
+ - spec/name_checker/twitter_checker_spec.rb
145
+ - spec/name_checker/whois_checker.rb
146
+ - spec/name_checker/whois_checker_spec.rb
147
+ - spec/name_checker_spec.rb
148
+ - spec/spec_helper.rb
149
+ - spec/support/helpers.rb