nayutaya-bookmark-utility 0.0.1 → 0.0.2

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.
data/Rakefile CHANGED
@@ -14,7 +14,7 @@ task :gemspec do
14
14
  version = BookmarkUtility::VERSION
15
15
  date = Time.now.strftime("%Y-%m-%d")
16
16
 
17
- files = Dir.glob("**/*").select { |s| File.file?(s) }
17
+ files = Dir.glob("**/*").select { |s| File.file?(s) }.reject { |s| /\.gem\z/ =~ s }
18
18
  test_files = Dir.glob("test/**").select { |s| File.file?(s) }
19
19
 
20
20
  File.open("#{NAME}.gemspec", "wb") { |file|
@@ -1,14 +1,17 @@
1
1
 
2
2
  require File.join(File.dirname(__FILE__), "canonical_table")
3
+ require File.join(File.dirname(__FILE__), "filter_table")
3
4
 
4
5
  module BookmarkUtility
5
6
  def self.get_canonical_url(url)
6
7
  url = url.dup
7
- CanonicalTable.each { |pattern, replace|
8
- if url.sub!(pattern, replace)
9
- break
10
- end
8
+ CanonicalTable.find { |pattern, replace|
9
+ !!url.sub!(pattern, replace)
11
10
  }
12
11
  return url
13
12
  end
13
+
14
+ def self.reject?(url)
15
+ return FilterTable.any? { |pattern| pattern =~ url }
16
+ end
14
17
  end
@@ -0,0 +1,13 @@
1
+
2
+ module BookmarkUtility
3
+ FilterTable = [
4
+ %r'\Ahttp://car\.nikkei\.co\.jp/release/', # 理由: title要素に記事名が含まれていないため
5
+ %r'\Ahttp://mainichi\.jp/life/money/kabu/nsj/news/', # 理由: title要素に記事名が含まれていないため
6
+ %r'\Ahttp://markets\.nikkei\.co\.jp/', # 理由: title要素に記事名が含まれていないため
7
+ %r'\Ahttp://www\.nikkei\.co\.jp/kyushu/news/', # 理由: title要素に記事名が含まれていないため
8
+ %r'\Ahttp://www\.nikkei\.co\.jp/news/', # 理由: title要素に記事名が含まれていないため
9
+ %r'\Ahttp://www\.pjnews\.net/', # 理由: title要素に記事名が含まれていないため
10
+ %r'\Ahttp://www\.travelvision\.jp/', # 理由: title要素に記事名が含まれていないため
11
+ %r'\Ahttp://www\.wbs\.co\.jp/', # 理由: title要素に記事名が含まれていないため
12
+ ].freeze
13
+ end
@@ -1,4 +1,4 @@
1
1
 
2
2
  module BookmarkUtility
3
- VERSION = "0.0.1"
3
+ VERSION = "0.0.2"
4
4
  end
@@ -5,8 +5,8 @@ Gem::Specification.new do |s|
5
5
  s.required_ruby_version = Gem::Requirement.new(">= 1.8.6")
6
6
 
7
7
  s.name = "nayutaya-bookmark-utility"
8
- s.version = "0.0.1"
9
- s.date = "2009-11-25"
8
+ s.version = "0.0.2"
9
+ s.date = "2009-11-26"
10
10
 
11
11
  s.authors = ["Yuya Kato"]
12
12
  s.email = "yuyakato@gmail.com"
@@ -22,6 +22,7 @@ Gem::Specification.new do |s|
22
22
  s.files = [
23
23
  "lib/bookmark_utility/canonical_table.rb",
24
24
  "lib/bookmark_utility/core.rb",
25
+ "lib/bookmark_utility/filter_table.rb",
25
26
  "lib/bookmark_utility/version.rb",
26
27
  "lib/bookmark_utility.rb",
27
28
  "nayutaya-bookmark-utility.gemspec",
@@ -29,10 +30,12 @@ Gem::Specification.new do |s|
29
30
  "Rakefile",
30
31
  "test/alltests.rb",
31
32
  "test/canonical_test.rb",
33
+ "test/filter_test.rb",
32
34
  ]
33
35
  s.test_files = [
34
36
  "test/alltests.rb",
35
37
  "test/canonical_test.rb",
38
+ "test/filter_test.rb",
36
39
  ]
37
40
  s.extra_rdoc_files = []
38
41
  end
@@ -0,0 +1,26 @@
1
+ #! ruby -Ku
2
+
3
+ $:.unshift(File.join(File.dirname(__FILE__), "..", "lib"))
4
+
5
+ require "test/unit"
6
+ require "bookmark_utility"
7
+
8
+ class FilterTest < Test::Unit::TestCase
9
+ def setup
10
+ @module = BookmarkUtility
11
+ end
12
+
13
+ def test_reject__ok
14
+ File.foreach(File.join(File.dirname(__FILE__), "..", "..", "filter_cases_ok.txt")) { |line|
15
+ url = line.chomp
16
+ assert_equal(false, @module.reject?(url), url)
17
+ }
18
+ end
19
+
20
+ def test_reject__ng
21
+ File.foreach(File.join(File.dirname(__FILE__), "..", "..", "filter_cases_ng.txt")) { |line|
22
+ url = line.chomp
23
+ assert_equal(true, @module.reject?(url), url)
24
+ }
25
+ end
26
+ end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: nayutaya-bookmark-utility
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.0.1
4
+ version: 0.0.2
5
5
  platform: ruby
6
6
  authors:
7
7
  - Yuya Kato
@@ -9,7 +9,7 @@ autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
11
 
12
- date: 2009-11-25 00:00:00 +09:00
12
+ date: 2009-11-26 00:00:00 +09:00
13
13
  default_executable:
14
14
  dependencies: []
15
15
 
@@ -24,6 +24,7 @@ extra_rdoc_files: []
24
24
  files:
25
25
  - lib/bookmark_utility/canonical_table.rb
26
26
  - lib/bookmark_utility/core.rb
27
+ - lib/bookmark_utility/filter_table.rb
27
28
  - lib/bookmark_utility/version.rb
28
29
  - lib/bookmark_utility.rb
29
30
  - nayutaya-bookmark-utility.gemspec
@@ -31,6 +32,7 @@ files:
31
32
  - Rakefile
32
33
  - test/alltests.rb
33
34
  - test/canonical_test.rb
35
+ - test/filter_test.rb
34
36
  has_rdoc: true
35
37
  homepage: http://github.com/nayutaya/bookmark-utility/
36
38
  licenses: []
@@ -62,3 +64,4 @@ summary: bookmark-utility
62
64
  test_files:
63
65
  - test/alltests.rb
64
66
  - test/canonical_test.rb
67
+ - test/filter_test.rb