ryodo 0.2.7 → 0.3.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,13 +1,9 @@
1
- # coding: utf-8
2
1
  require "ryodo/suffix_list_fetcher"
3
- require File.expand_path("../../spec_helper.rb", __FILE__)
2
+ require "spec_helper"
4
3
 
5
4
  describe Ryodo::SuffixListFetcher do
6
-
7
- before do
8
- @custom_uri = "http://custom.suffix.list.example.com/foo-bar.dat"
9
- @custom_storage = "#{RYODO_TMP_ROOT}/custom-storage-path.dat"
10
- end
5
+ let(:custom_uri) { "http://custom.suffix.list.example.com/foo-bar.dat" }
6
+ let(:custom_storage) { "#{RYODO_TMP_ROOT}/custom-storage-path.dat" }
11
7
 
12
8
  after do
13
9
  Dir["#{RYODO_TMP_ROOT}/**/*"].each do |file|
@@ -18,33 +14,32 @@ describe Ryodo::SuffixListFetcher do
18
14
  it "#new creates a new instance with predefined vars" do
19
15
  fetcher = described_class.new
20
16
 
21
- fetcher.instance_variable_get("@uri").should == URI(Ryodo::PUBLIC_SUFFIX_DATA_URI)
22
- fetcher.instance_variable_get("@store").should == Ryodo::PUBLIC_SUFFIX_STORE
17
+ expect(fetcher.instance_variable_get("@uri")).to eq URI(Ryodo::PUBLIC_SUFFIX_DATA_URI)
18
+ expect(fetcher.instance_variable_get("@store")).to be Ryodo::PUBLIC_SUFFIX_STORE
23
19
  end
24
20
 
25
21
  it "#new creates a new instance with custom vars" do
22
+ fetcher = described_class.new(custom_uri, custom_storage)
26
23
 
27
- fetcher = described_class.new(@custom_uri, @custom_storage)
28
-
29
- fetcher.instance_variable_get("@uri").should == URI(@custom_uri)
30
- fetcher.instance_variable_get("@store").should == @custom_storage
24
+ expect(fetcher.instance_variable_get("@uri")).to eq URI(custom_uri)
25
+ expect(fetcher.instance_variable_get("@store")).to be custom_storage
31
26
  end
32
27
 
33
28
  context "data retrieval and storage" do
34
-
35
- let(:fetcher){ described_class.new }
29
+ let(:fetcher) { described_class.new }
36
30
 
37
31
  it "#fetch_data retrieves remote data" do
32
+ first_line = /This Source Code Form is subject to the terms of the Mozilla Public/
38
33
  fetcher.fetch_data
39
34
 
40
- fetcher.instance_variable_get("@fetched_data").first.should =~ /This Source Code Form is subject to the terms of the Mozilla Public/
35
+ expect(fetcher.instance_variable_get("@fetched_data").first).to match(first_line)
41
36
  end
42
37
 
43
38
  it "#save_data stores fetched data into file (as cleaned set)" do
44
39
  fetcher.fetch_data
45
40
  fetcher.instance_variable_set("@prepared_data", ["dummy data"])
46
41
 
47
- File.should_receive(:open).with(Ryodo::PUBLIC_SUFFIX_STORE,"w")
42
+ expect(File).to receive(:open).with(Ryodo::PUBLIC_SUFFIX_STORE, "w")
48
43
  fetcher.save_data
49
44
  end
50
45
 
@@ -52,29 +47,22 @@ describe Ryodo::SuffixListFetcher do
52
47
  fetcher.fetch_data
53
48
  prepared_data = fetcher.prepare_data
54
49
 
55
- prepared_data.should be_an(Array)
56
- prepared_data.none?{|e| e =~ /^\/\//}.should be_true # no comment lines
57
- prepared_data.none?{|e| e =~ /^\n/}.should be_true # no empty lines
50
+ expect(prepared_data).to be_an(Array)
51
+ expect(prepared_data).to_not include(%r{\A//|\A\n})
58
52
  end
59
-
60
53
  end
61
54
 
62
55
  context ".fetch_and_save! does all jobs" do
63
-
64
- before do
65
- @valid_uri = Ryodo::PUBLIC_SUFFIX_DATA_URI
66
- @invalid_uri = "#{Ryodo::PUBLIC_SUFFIX_DATA_URI}&invalid_file"
67
- @storage = "#{RYODO_TMP_ROOT}/suffixes.dat"
68
- end
56
+ let(:valid_uri) { Ryodo::PUBLIC_SUFFIX_DATA_URI }
57
+ let(:invalid_uri) { "#{Ryodo::PUBLIC_SUFFIX_DATA_URI}&invalid_file" }
58
+ let(:storage) { "#{RYODO_TMP_ROOT}/suffixes.dat" }
69
59
 
70
60
  it "and returns true if successful" do
71
- described_class.fetch_and_save!(@valid_uri, @storage).should be_true
61
+ expect(described_class.fetch_and_save!(valid_uri, storage)).to be true
72
62
  end
73
63
 
74
64
  it "and returns false if something failed" do
75
- described_class.fetch_and_save!(@invalid_uri, @storage).should be_false
65
+ expect(described_class.fetch_and_save!(invalid_uri, storage)).to be false
76
66
  end
77
-
78
67
  end
79
-
80
68
  end
@@ -1,8 +1,6 @@
1
- # coding: utf-8
2
- require File.expand_path("../../spec_helper.rb", __FILE__)
1
+ require "spec_helper"
3
2
 
4
3
  describe Ryodo::SuffixList do
5
-
6
4
  context "singleton" do
7
5
 
8
6
  it "cannot be instanciated via #new" do
@@ -14,25 +12,23 @@ describe Ryodo::SuffixList do
14
12
  described_class.send(:"SuffixList")
15
13
  end
16
14
 
17
- it "instance check" do
18
- o1 = described_class
19
- o2 = described_class
20
-
21
- o1.should == o2
22
- end
23
-
24
15
  it "has .instance" do
25
- described_class.methods.should include(:"instance")
16
+ expect(described_class.methods).to include(:instance)
26
17
  end
27
18
 
19
+ it "instance check" do
20
+ o1 = described_class.instance
21
+ o2 = described_class.instance
22
+
23
+ expect(o1).to be o2
24
+ end
28
25
  end
29
26
 
30
27
  context "methods" do
31
-
32
- let(:described_instance){ described_class.instance }
28
+ let(:described_instance) { described_class.instance }
33
29
 
34
30
  it ".reload can retrieve a fresh suffix list" do
35
- described_instance.should_receive(:load_file).and_return(true)
31
+ expect(described_instance).to receive(:load_file).and_return(true)
36
32
  described_class.reload
37
33
  end
38
34
 
@@ -41,10 +37,10 @@ describe Ryodo::SuffixList do
41
37
  end
42
38
 
43
39
  it ".list returns an array of arrays" do
44
- described_class.list.should be_kind_of(Array)
45
- described_class.list.any?{|e|e.is_a?(Array)}.should be_true
40
+ expect(described_class.list).to be_an(Array)
41
+ expect(
42
+ described_class.list.all? { |e| e.is_a?(Array) }
43
+ ).to be true
46
44
  end
47
-
48
45
  end
49
-
50
46
  end
data/spec/ryodo_spec.rb CHANGED
@@ -1,6 +1,5 @@
1
- # coding: utf-8
2
- require File.expand_path("../spec_helper.rb", __FILE__)
1
+ require "spec_helper"
3
2
 
4
3
  describe Ryodo do
5
- pending
4
+ skip
6
5
  end
data/spec/spec_helper.rb CHANGED
@@ -1,28 +1,11 @@
1
- # coding: utf-8
2
-
3
1
  require "coveralls"
4
2
  Coveralls.wear!
5
3
 
6
- $:.push(File.expand_path("../../lib", __FILE__))
7
-
8
4
  require "fileutils"
9
5
  require "fakeweb"
10
6
  require "uri"
11
7
  require "ryodo"
12
8
 
13
- RSpec::Matchers.define :include_hash do |expected|
14
-
15
- match do |actual|
16
- actual.is_a?(Hash) &&
17
- expected.is_a?(Hash) &&
18
- (actual.keys & expected.keys) == expected.keys &&
19
- !(expected.keys.inject([]){|m,k|
20
- m << expected.has_value?(actual[k])
21
- }.uniq.include?(false))
22
- end
23
-
24
- end
25
-
26
9
  RYODO_SPEC_ROOT = File.expand_path("..", __FILE__)
27
10
  RYODO_TMP_ROOT = File.expand_path("../../tmp/spec", __FILE__)
28
11
 
@@ -31,11 +14,11 @@ FileUtils.mkdir_p RYODO_TMP_ROOT unless File.exists?(RYODO_TMP_ROOT)
31
14
  FakeWeb.register_uri(:get,
32
15
  Ryodo::PUBLIC_SUFFIX_DATA_URI,
33
16
  :body => File.read("#{RYODO_SPEC_ROOT}/_files/mozilla_effective_tld_names.dat")
34
- )
17
+ )
35
18
 
36
19
  FakeWeb.register_uri(
37
20
  :get,
38
21
  "#{Ryodo::PUBLIC_SUFFIX_DATA_URI}&invalid_file",
39
22
  :body => "Oops!",
40
23
  :status => [404,"Not Found"]
41
- )
24
+ )
metadata CHANGED
@@ -1,113 +1,113 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ryodo
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.7
4
+ version: 0.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Christoph Grabo
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2014-02-16 00:00:00.000000000 Z
11
+ date: 2014-10-26 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
- name: bundler
14
+ name: rake
15
15
  requirement: !ruby/object:Gem::Requirement
16
16
  requirements:
17
- - - "~>"
17
+ - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: '1.5'
19
+ version: '0'
20
20
  type: :development
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
- - - "~>"
24
+ - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: '1.5'
26
+ version: '0'
27
27
  - !ruby/object:Gem::Dependency
28
- name: rake
28
+ name: bundler
29
29
  requirement: !ruby/object:Gem::Requirement
30
30
  requirements:
31
- - - ">="
31
+ - - "~>"
32
32
  - !ruby/object:Gem::Version
33
- version: '0'
33
+ version: '1.5'
34
34
  type: :development
35
35
  prerelease: false
36
36
  version_requirements: !ruby/object:Gem::Requirement
37
37
  requirements:
38
- - - ">="
38
+ - - "~>"
39
39
  - !ruby/object:Gem::Version
40
- version: '0'
40
+ version: '1.5'
41
41
  - !ruby/object:Gem::Dependency
42
42
  name: coveralls
43
43
  requirement: !ruby/object:Gem::Requirement
44
44
  requirements:
45
- - - ">="
45
+ - - "~>"
46
46
  - !ruby/object:Gem::Version
47
- version: '0'
47
+ version: 0.7.1
48
48
  type: :development
49
49
  prerelease: false
50
50
  version_requirements: !ruby/object:Gem::Requirement
51
51
  requirements:
52
- - - ">="
52
+ - - "~>"
53
53
  - !ruby/object:Gem::Version
54
- version: '0'
54
+ version: 0.7.1
55
55
  - !ruby/object:Gem::Dependency
56
56
  name: rspec
57
57
  requirement: !ruby/object:Gem::Requirement
58
58
  requirements:
59
- - - ">="
59
+ - - "~>"
60
60
  - !ruby/object:Gem::Version
61
- version: '0'
61
+ version: 3.1.0
62
62
  type: :development
63
63
  prerelease: false
64
64
  version_requirements: !ruby/object:Gem::Requirement
65
65
  requirements:
66
- - - ">="
66
+ - - "~>"
67
67
  - !ruby/object:Gem::Version
68
- version: '0'
68
+ version: 3.1.0
69
69
  - !ruby/object:Gem::Dependency
70
70
  name: fakeweb
71
71
  requirement: !ruby/object:Gem::Requirement
72
72
  requirements:
73
- - - ">="
73
+ - - "~>"
74
74
  - !ruby/object:Gem::Version
75
- version: '0'
75
+ version: 1.3.0
76
76
  type: :development
77
77
  prerelease: false
78
78
  version_requirements: !ruby/object:Gem::Requirement
79
79
  requirements:
80
- - - ">="
80
+ - - "~>"
81
81
  - !ruby/object:Gem::Version
82
- version: '0'
82
+ version: 1.3.0
83
83
  - !ruby/object:Gem::Dependency
84
84
  name: pry
85
85
  requirement: !ruby/object:Gem::Requirement
86
86
  requirements:
87
- - - ">="
87
+ - - "~>"
88
88
  - !ruby/object:Gem::Version
89
- version: '0'
89
+ version: 0.10.1
90
90
  type: :development
91
91
  prerelease: false
92
92
  version_requirements: !ruby/object:Gem::Requirement
93
93
  requirements:
94
- - - ">="
94
+ - - "~>"
95
95
  - !ruby/object:Gem::Version
96
- version: '0'
96
+ version: 0.10.1
97
97
  - !ruby/object:Gem::Dependency
98
98
  name: pry-doc
99
99
  requirement: !ruby/object:Gem::Requirement
100
100
  requirements:
101
- - - ">="
101
+ - - "~>"
102
102
  - !ruby/object:Gem::Version
103
- version: '0'
103
+ version: 0.6.0
104
104
  type: :development
105
105
  prerelease: false
106
106
  version_requirements: !ruby/object:Gem::Requirement
107
107
  requirements:
108
- - - ">="
108
+ - - "~>"
109
109
  - !ruby/object:Gem::Version
110
- version: '0'
110
+ version: 0.6.0
111
111
  description: ryōdo【領土】 りょうど — A domain name parser gem using public suffix list (provided
112
112
  by publicsuffix.org / mozilla)
113
113
  email:
@@ -165,7 +165,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
165
165
  version: '0'
166
166
  requirements: []
167
167
  rubyforge_project:
168
- rubygems_version: 2.2.0
168
+ rubygems_version: 2.2.2
169
169
  signing_key:
170
170
  specification_version: 4
171
171
  summary: ryōdo【領土】 りょうど — A domain name parser using public suffix list