[Groonga-commit] ranguba/groonga-client-model at e16fc3d [master] migration: support specifying config value by argument

Back to archive index

Kouhei Sutou null+****@clear*****
Tue Mar 7 12:39:03 JST 2017


Kouhei Sutou	2017-03-07 12:39:03 +0900 (Tue, 07 Mar 2017)

  New Revision: e16fc3d1f4ce51c7627cbc1e96d55fb511d1d813
  https://github.com/ranguba/groonga-client-model/commit/e16fc3d1f4ce51c7627cbc1e96d55fb511d1d813

  Message:
    migration: support specifying config value by argument

  Modified files:
    lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb
    lib/rails/generators/groonga_client_model/migration_generator.rb
    test/apps/rails4/test/generators/migration_generator_test.rb
    test/apps/rails5/test/generators/migration_generator_test.rb

  Modified: lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb (+1 -1)
===================================================================
--- lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb    2017-03-06 21:00:39 +0900 (5b8eeb2)
+++ lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb    2017-03-07 12:39:03 +0900 (565cc71)
@@ -1,6 +1,6 @@
 class <%= migration_class_name %> < GroongaClientModel::Migration
   def up
-    config_set "<%= @config_key %>", "new value"
+    config_set "<%= @config_key %>", "<%= @config_value %>"
   end
 
   def down

  Modified: lib/rails/generators/groonga_client_model/migration_generator.rb (+5 -0)
===================================================================
--- lib/rails/generators/groonga_client_model/migration_generator.rb    2017-03-06 21:00:39 +0900 (5b33e7a)
+++ lib/rails/generators/groonga_client_model/migration_generator.rb    2017-03-07 12:39:03 +0900 (02f32e0)
@@ -81,6 +81,11 @@ module GroongaClientModel
         when /\Aset_config_(.*)\z/
           @migration_template = "set_config_migration.rb"
           @config_key = normalize_config_key($1)
+          if attributes.empty?
+            @config_value = "new value"
+          else
+            @config_value = attributes.first.name
+          end
         when /\Adelete_config_(.*)\z/
           @migration_template = "delete_config_migration.rb"
           @config_key = normalize_config_key($1)

  Modified: test/apps/rails4/test/generators/migration_generator_test.rb (+16 -0)
===================================================================
--- test/apps/rails4/test/generators/migration_generator_test.rb    2017-03-06 21:00:39 +0900 (f480add)
+++ test/apps/rails4/test/generators/migration_generator_test.rb    2017-03-07 12:39:03 +0900 (038aee5)
@@ -56,6 +56,22 @@ end
     MIGRATION
   end
 
+  test "set_config: value" do
+    run_generator(["set_config_alias_column", "aliases.real_name"])
+    assert_migration("db/groonga/migrate/set_config_alias_column.rb", <<-MIGRATION)
+class SetConfigAliasColumn < GroongaClientModel::Migration
+  def up
+    config_set "alias.column", "aliases.real_name"
+  end
+
+  def down
+    # config_set "alias.column", "old value"
+    # config_delete "alias.column"
+  end
+end
+    MIGRATION
+  end
+
   test "delete_config" do
     run_generator(["delete_config_alias_column"])
     assert_migration("db/groonga/migrate/delete_config_alias_column.rb", <<-MIGRATION)

  Modified: test/apps/rails5/test/generators/migration_generator_test.rb (+16 -0)
===================================================================
--- test/apps/rails5/test/generators/migration_generator_test.rb    2017-03-06 21:00:39 +0900 (f480add)
+++ test/apps/rails5/test/generators/migration_generator_test.rb    2017-03-07 12:39:03 +0900 (038aee5)
@@ -56,6 +56,22 @@ end
     MIGRATION
   end
 
+  test "set_config: value" do
+    run_generator(["set_config_alias_column", "aliases.real_name"])
+    assert_migration("db/groonga/migrate/set_config_alias_column.rb", <<-MIGRATION)
+class SetConfigAliasColumn < GroongaClientModel::Migration
+  def up
+    config_set "alias.column", "aliases.real_name"
+  end
+
+  def down
+    # config_set "alias.column", "old value"
+    # config_delete "alias.column"
+  end
+end
+    MIGRATION
+  end
+
   test "delete_config" do
     run_generator(["delete_config_alias_column"])
     assert_migration("db/groonga/migrate/delete_config_alias_column.rb", <<-MIGRATION)
-------------- next part --------------
HTML����������������������������...
Download 



More information about the Groonga-commit mailing list
Back to archive index