Yoji Shidara
null+****@clear*****
Tue Feb 18 17:29:43 JST 2014
Yoji Shidara 2014-02-18 17:29:43 +0900 (Tue, 18 Feb 2014) New Revision: e83597ae44a3da0d94ba737ecdb7f2ee5edb95ba https://github.com/droonga/fluent-plugin-droonga/commit/e83597ae44a3da0d94ba737ecdb7f2ee5edb95ba Message: schema: Add schema for watch as a practical config Modified files: test/unit/catalog/test_schema.rb Modified: test/unit/catalog/test_schema.rb (+98 -0) =================================================================== --- test/unit/catalog/test_schema.rb 2014-02-18 17:11:50 +0900 (b19b528) +++ test/unit/catalog/test_schema.rb 2014-02-18 17:29:43 +0900 (32ddbf7) @@ -72,6 +72,104 @@ class CatalogSchemaTest < Test::Unit::TestCase ) end + def test_integration + assert_equal([ + { + "type" => "table_create", + "body" => { + "name" => "Keyword", + "key_type" => "ShortText", + "flags" => "TABLE_PAT_KEY", + "normalizer" => "NormalizerAuto", + } + }, + { + "type" => "table_create", + "body" => { + "name" => "Query", + "key_type" => "ShortText", + "flags" => "TABLE_HASH_KEY" + } + }, + { + "type" => "table_create", + "body" => { + "name" => "Route", + "key_type" => "ShortText", + "flags" => "TABLE_HASH_KEY" + } + }, + { + "type" => "table_create", + "body" => { + "name" => "Subscriber", + "key_type" => "ShortText", + "flags" => "TABLE_HASH_KEY" + } + } + # TODO add column_create commands + ], + create_schema( + "Keyword" => { + "type" => "PatriciaTrie", + "keyType" => "ShortText", + "normalizer" => "NormalizerAuto", + "columns" => { + "queries" => { + "type" => "Index", + "valueType" => "Query", + "indexOptions" => { + "sources" => [ + "keywords" + ] + } + }, + } + }, + "Query" => { + "type" => "Hash", + "keyType" => "ShortText", + "columns" => { + "subscribers" => { + "type" => "Index", + "valueType" => "Subscriber", + "indexOptions" => { + "sources" => [ + "subscriptions" + ] + } + }, + "keywords" => { + "type" => "Vector", + "valueType" => "Keyword" + } + } + }, + "Route" => { + "type" => "Hash", + "keyType" => "ShortText" + }, + "Subscriber" => { + "type" => "Hash", + "keyType" => "ShortText", + "columns" => { + "last_modified" => { + "type" => "Scalar", + "valueType" => "Time" + }, + "subscriptions" => { + "type" => "Vector", + "valueType" => "Query" + }, + "route" => { + "type" => "Scalar", + "valueType" => "Route" + }, + } + } + ).to_commands) + end + class TableTest < self def create_table(name, data) Droonga::Catalog::Schema::Table.new(name, data) -------------- next part -------------- HTML����������������������������...Download