Kouhei Sutou
null+****@clear*****
Thu Jul 17 20:26:27 JST 2014
Kouhei Sutou 2014-07-17 20:26:27 +0900 (Thu, 17 Jul 2014) New Revision: b205443d09241bd46da083fba191b140f259e5c6 https://github.com/droonga/droonga-engine/commit/b205443d09241bd46da083fba191b140f259e5c6 Message: catalog-generator: use common code Modified files: lib/droonga/catalog_generator.rb test/unit/test_catalog_generator.rb Modified: lib/droonga/catalog_generator.rb (+1 -17) =================================================================== --- lib/droonga/catalog_generator.rb 2014-07-17 20:21:23 +0900 (b469e0c) +++ lib/droonga/catalog_generator.rb 2014-07-17 20:26:27 +0900 (da3918a) @@ -230,8 +230,6 @@ module Droonga end end - ADDRESS_MATCHER = /\A(.*):(\d+)\/([^\.]+)\.(.+)\z/ - def dataset_to_params(dataset) params = {} params[:n_workers] = dataset["nWorkers"] @@ -239,21 +237,7 @@ module Droonga params[:plugins] = dataset["plugins"] params[:schema] = dataset["schema"] if dataset["schema"] params[:fact] = dataset["fact"] if dataset["fact"] - - nodes = dataset["replicas"].collect do |replica| - ADDRESS_MATCHER =~ replica["slices"].first["volume"]["address"] - { - :host => $1, - :port => $2.to_i, - :tag => $3, - :path => $4, - } - end - params[:tag] = nodes.first[:tag] - params[:port] = nodes.first[:port].to_i - params[:hosts] = nodes.collect do |node| - node[:host] - end + params[:replicas] = dataset["replicas"] params end end Modified: test/unit/test_catalog_generator.rb (+32 -1) =================================================================== --- test/unit/test_catalog_generator.rb 2014-07-17 20:21:23 +0900 (efde063) +++ test/unit/test_catalog_generator.rb 2014-07-17 20:26:27 +0900 (ba98320) @@ -89,10 +89,41 @@ class CatalogGeneratorTest < Test::Unit::TestCase @generator.add_dataset("Droonga", :fact => "Entries") assert_equal("Entries", generate["datasets"]["Droonga"]["fact"]) end + + class LoadTest < self + def test_replicas + dataset = { + "nWorkers" => 4, + "plugins" => ["groonga", "search", "crud", "dump", "system"], + "schema" => [], + "replicas" => [ + { + "dimension" => "_key", + "slicer" => "hash", + "slices" => [ + { + "volume" => { + "address" => "127.0.0.1:10031/droonga.000", + }, + "weight" => 100, + }, + ], + }, + ], + } + catalog = { + "datasets" => { + "Default" => dataset, + } + } + @generator.load(catalog) + assert_equal(dataset, generate["datasets"]["Default"]) + end + end end class ReplicasTest < self - def test_raw + def test_catalog replicas = [ { "dimension" => "_key", -------------- next part -------------- HTML����������������������������...Download