Kouhei Sutou
null+****@clear*****
Fri Jan 3 15:15:02 JST 2014
Kouhei Sutou 2014-01-03 15:15:02 +0900 (Fri, 03 Jan 2014) New Revision: 8f5ad1284b85ccc4c84702e73510fb56a8d8b8fb https://github.com/ranguba/chupa-text/commit/8f5ad1284b85ccc4c84702e73510fb56a8d8b8fb Message: Require decomposer name on register Modified files: lib/chupa-text/decomposer-registry.rb lib/chupa-text/decomposers/gzip.rb lib/chupa-text/decomposers/tar.rb test/test-decomposer-registry.rb Modified: lib/chupa-text/decomposer-registry.rb (+4 -4) =================================================================== --- lib/chupa-text/decomposer-registry.rb 2014-01-03 15:11:35 +0900 (c3061ce) +++ lib/chupa-text/decomposer-registry.rb 2014-01-03 15:15:02 +0900 (d6b1fed) @@ -19,11 +19,11 @@ module ChupaText include Enumerable def initialize - @decomposer_classes = [] + @decomposer_classes = {} end - def register(decomposer_class) - @decomposer_classes << decomposer_class + def register(name, decomposer_class) + @decomposer_classes[name] = decomposer_class end def each(&block) @@ -31,7 +31,7 @@ module ChupaText end def decomposers - collect do |decomposer_class| + collect do |name, decomposer_class| decomposer_class.new({}) end end Modified: lib/chupa-text/decomposers/gzip.rb (+1 -1) =================================================================== --- lib/chupa-text/decomposers/gzip.rb 2014-01-03 15:11:35 +0900 (cfd4090) +++ lib/chupa-text/decomposers/gzip.rb 2014-01-03 15:15:02 +0900 (cc840bb) @@ -22,7 +22,7 @@ require "chupa-text" module ChupaText module Decomposers class Gzip < Decomposer - registry.register(self) + registry.register("gzip", self) TARGET_EXTENSIONS = ["gz", "tgz"] TARGET_CONTENT_TYPES = [ Modified: lib/chupa-text/decomposers/tar.rb (+1 -1) =================================================================== --- lib/chupa-text/decomposers/tar.rb 2014-01-03 15:11:35 +0900 (0da23d3) +++ lib/chupa-text/decomposers/tar.rb 2014-01-03 15:15:02 +0900 (d54b1c2) @@ -22,7 +22,7 @@ require "chupa-text" module ChupaText module Decomposers class Tar < Decomposer - registry.register(self) + registry.register("tar", self) def target?(data) data.extension == "tar" or Modified: test/test-decomposer-registry.rb (+3 -3) =================================================================== --- test/test-decomposer-registry.rb 2014-01-03 15:11:35 +0900 (bd344c6) +++ test/test-decomposer-registry.rb 2014-01-03 15:15:02 +0900 (1aefa28) @@ -24,12 +24,12 @@ class TestDecomposerRegistry < Test::Unit::TestCase def test_register assert_equal([], @registry.to_a) - @registry.register(CSVDecomposer) - assert_equal([CSVDecomposer], @registry.to_a) + @registry.register("csv", CSVDecomposer) + assert_equal([["csv", CSVDecomposer]], @registry.to_a) end def test_decomposers - @registry.register(CSVDecomposer) + @registry.register("csv", CSVDecomposer) assert_equal([CSVDecomposer], @registry.decomposers.collect(&:class)) end end -------------- next part -------------- HTML����������������������������...Download