groonga-client-model 1.0.0 → 1.0.1

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.
Files changed (57) hide show
  1. checksums.yaml +4 -4
  2. data/doc/text/news.md +30 -0
  3. data/groonga-client-model.gemspec +1 -1
  4. data/lib/groonga_client_model/log_subscriber.rb +1 -3
  5. data/lib/groonga_client_model/migration.rb +493 -0
  6. data/lib/groonga_client_model/migrator.rb +240 -0
  7. data/lib/groonga_client_model/railtie.rb +4 -2
  8. data/lib/groonga_client_model/railties/groonga.rake +55 -2
  9. data/lib/groonga_client_model/record.rb +39 -1
  10. data/lib/groonga_client_model/schema.rb +8 -0
  11. data/lib/groonga_client_model/schema_loader.rb +4 -9
  12. data/lib/groonga_client_model/test/groonga_server_runner.rb +19 -3
  13. data/lib/groonga_client_model/version.rb +1 -1
  14. data/lib/rails/generators/groonga_client_model/migration/templates/create_table_migration.rb +14 -0
  15. data/lib/rails/generators/groonga_client_model/migration/templates/delete_config_migration.rb +9 -0
  16. data/lib/rails/generators/groonga_client_model/migration/templates/migration.rb +12 -0
  17. data/lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb +10 -0
  18. data/lib/rails/generators/groonga_client_model/migration_generator.rb +125 -0
  19. data/lib/rails/generators/groonga_client_model/{model/model_generator.rb → model_generator.rb} +18 -4
  20. data/test/apps/rails4/Gemfile.lock +2 -2
  21. data/test/apps/rails4/db/groonga/migrate/20170303120517_create_posts.rb +8 -0
  22. data/test/apps/rails4/db/groonga/migrate/20170303120527_create_terms.rb +7 -0
  23. data/test/apps/rails4/db/groonga/migrate/20170303120536_create_ages.rb +6 -0
  24. data/test/apps/rails4/log/development.log +22 -0
  25. data/test/apps/rails4/log/test.log +1350 -0
  26. data/test/apps/rails4/test/generators/migration_generator_test.rb +103 -0
  27. data/test/apps/rails4/test/tmp/db/groonga/migrate/20170307045825_set_config_alias_column.rb +10 -0
  28. data/test/apps/rails5/Gemfile.lock +8 -8
  29. data/test/apps/rails5/db/groonga/migrate/20170301061420_create_posts.rb +8 -0
  30. data/test/apps/rails5/db/groonga/migrate/20170303115054_create_terms.rb +7 -0
  31. data/test/apps/rails5/db/groonga/migrate/20170303115135_create_ages.rb +6 -0
  32. data/test/apps/rails5/log/development.log +350 -0
  33. data/test/apps/rails5/log/test.log +3260 -0
  34. data/test/apps/rails5/test/generators/migration_generator_test.rb +103 -0
  35. data/test/apps/rails5/test/tmp/db/groonga/migrate/20170307081511_remove_title_from_posts.rb +5 -0
  36. data/test/apps/rails5/tmp/cache/assets/sprockets/v3.0/5C/5Cws9GLWcOju_f3tIpY01qSaj7zkLAU0a2bQmpf7sS8.cache +1 -0
  37. data/test/apps/rails5/tmp/cache/assets/sprockets/v3.0/XH/XH9pWZvGgK476BpPGID5z8hjzRmGJjtzV0cHBLXhIKc.cache +1 -0
  38. data/test/unit/fixtures/migrate/20170301061420_create_posts.rb +8 -0
  39. data/test/unit/fixtures/migrate/20170303115054_create_terms.rb +7 -0
  40. data/test/unit/fixtures/migrate/20170303115135_create_ages.rb +6 -0
  41. data/test/unit/migration/test_config.rb +62 -0
  42. data/test/unit/migration/test_copy.rb +117 -0
  43. data/test/unit/migration/test_create_table.rb +528 -0
  44. data/test/unit/migration/test_exist.rb +47 -0
  45. data/test/unit/migration/test_load.rb +83 -0
  46. data/test/unit/record/test_active_model.rb +31 -0
  47. data/test/unit/record/test_readers.rb +45 -0
  48. data/test/unit/record/test_timestamps.rb +76 -0
  49. data/test/unit/record/test_validators.rb +295 -0
  50. data/test/unit/run-test.rb +1 -2
  51. data/test/unit/test_helper.rb +109 -0
  52. data/test/unit/test_load_value_generator.rb +8 -7
  53. data/test/unit/test_migrator.rb +156 -0
  54. metadata +64 -11
  55. data/test/apps/rails4/db/schema.grn +0 -9
  56. data/test/apps/rails5/db/schema.grn +0 -11
  57. data/test/unit/test_record.rb +0 -345
@@ -27,8 +27,7 @@ test_dir = base_dir + "test/unit"
27
27
 
28
28
  $LOAD_PATH.unshift(lib_dir.to_s)
29
29
 
30
- require "test-unit"
31
- require "groonga-client-model"
30
+ require_relative "test_helper"
32
31
 
33
32
  Thread.abort_on_exception = true
34
33
 
@@ -0,0 +1,109 @@
1
+ # Copyright (C) 2017 Kouhei Sutou <kou@clear-code.com>
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ require "stringio"
18
+
19
+ require "test-unit"
20
+
21
+ require "groonga-client-model"
22
+ require "groonga_client_model/test_helper"
23
+ require "groonga_client_model/migration"
24
+
25
+ GroongaClientModel::Client.url = "http://127.0.0.1:20041"
26
+
27
+ module TestHelper
28
+ module Columns
29
+ Column = Groonga::Client::Response::Schema::Column
30
+
31
+ class << self
32
+ def build(definitions={})
33
+ raw_schema = nil
34
+ raw_columns = {}
35
+ default_definition = {
36
+ "indexes" => [],
37
+ "value_type" => nil,
38
+ }
39
+ id_definition = default_definition.merge("name" => "_id",
40
+ "value_type" => {
41
+ "name" => "UInt32",
42
+ })
43
+ raw_columns["_id"] = Column.new(raw_schema, id_definition)
44
+ definitions.each do |name, definition|
45
+ definition = default_definition.merge("name" => name).merge(definition)
46
+ raw_columns[name] = Column.new(raw_schema, definition)
47
+ end
48
+ GroongaClientModel::Schema::Columns.new(raw_schema, raw_columns)
49
+ end
50
+ end
51
+ end
52
+
53
+ module Migration
54
+ def open_client(&block)
55
+ GroongaClientModel::Client.open(&block)
56
+ end
57
+
58
+ def normalize_report(report)
59
+ report.gsub(/[0-9]+\.[0-9]+s/, "0.0s")
60
+ end
61
+
62
+ def dump
63
+ open_client do |client|
64
+ client.dump.body
65
+ end
66
+ end
67
+
68
+ def assert_migrate(expected_up_report,
69
+ expected_down_report,
70
+ expected_dump)
71
+ migration_class = Class.new(GroongaClientModel::Migration) do |klass|
72
+ define_method(:change) do
73
+ yield(self)
74
+ end
75
+ end
76
+
77
+ original_dump = dump
78
+
79
+ up_output = StringIO.new
80
+ open_client do |client|
81
+ migration = migration_class.new(client)
82
+ migration.output = up_output
83
+ migration.up
84
+ end
85
+ assert_equal(expected_up_report, normalize_report(up_output.string))
86
+
87
+ assert_equal(expected_dump, dump)
88
+
89
+ if expected_down_report
90
+ down_output = StringIO.new
91
+ open_client do |client|
92
+ migration = migration_class.new(client)
93
+ migration.output = down_output
94
+ migration.down
95
+ end
96
+ assert_equal(expected_down_report, normalize_report(down_output.string))
97
+ assert_equal(original_dump, dump)
98
+ else
99
+ open_client do |client|
100
+ migration = migration_class.new(client)
101
+ assert_raise(GroongaClientModel::IrreversibleMigrationError) do
102
+ migration.down
103
+ end
104
+ end
105
+ assert_equal(expected_dump, dump)
106
+ end
107
+ end
108
+ end
109
+ end
@@ -18,10 +18,9 @@ class TestLoadValueGenerator < Test::Unit::TestCase
18
18
  class Memo < GroongaClientModel::Record
19
19
  class << self
20
20
  def columns
21
- GroongaClientModel::Schema::Columns.new(nil,
22
- "tag" => {},
23
- "tags" => {},
24
- "created_at" => {})
21
+ TestHelper::Columns.build("tag" => {},
22
+ "tags" => {},
23
+ "created_at" => {})
25
24
  end
26
25
  end
27
26
  end
@@ -29,9 +28,11 @@ class TestLoadValueGenerator < Test::Unit::TestCase
29
28
  class Tag < GroongaClientModel::Record
30
29
  class << self
31
30
  def columns
32
- GroongaClientModel::Schema::Columns.new(nil,
33
- "_id" => {},
34
- "_key" => {})
31
+ TestHelper::Columns.build("_key" => {
32
+ "value_type" => {
33
+ "name" => "ShortText",
34
+ },
35
+ })
35
36
  end
36
37
  end
37
38
  end
@@ -0,0 +1,156 @@
1
+ # Copyright (C) 2017 Kouhei Sutou <kou@clear-code.com>
2
+ #
3
+ # This library is free software; you can redistribute it and/or
4
+ # modify it under the terms of the GNU Lesser General Public
5
+ # License as published by the Free Software Foundation; either
6
+ # version 2.1 of the License, or (at your option) any later version.
7
+ #
8
+ # This library is distributed in the hope that it will be useful,
9
+ # but WITHOUT ANY WARRANTY; without even the implied warranty of
10
+ # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11
+ # Lesser General Public License for more details.
12
+ #
13
+ # You should have received a copy of the GNU Lesser General Public
14
+ # License along with this library; if not, write to the Free Software
15
+ # Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
16
+
17
+ class TestMigrator < Test::Unit::TestCase
18
+ include GroongaClientModel::TestHelper
19
+
20
+ def create_migrator
21
+ path = File.expand_path("fixtures/migrate", __dir__)
22
+ migrator = GroongaClientModel::Migrator.new(path)
23
+ migrator.output = StringIO.new
24
+ migrator
25
+ end
26
+
27
+ sub_test_case("#target_version=") do
28
+ sub_test_case("exist") do
29
+ test("forward") do
30
+ migrator = create_migrator
31
+ migrator.target_version = 20170303115054
32
+ assert_equal([
33
+ 20170301061420,
34
+ 20170303115054,
35
+ ],
36
+ migrator.each.collect(&:version))
37
+ end
38
+
39
+ test("backward") do
40
+ create_migrator.migrate
41
+
42
+ migrator = create_migrator
43
+ migrator.target_version = 20170303115054
44
+ assert_equal([
45
+ 20170303115135,
46
+ ],
47
+ migrator.each.collect(&:version))
48
+ end
49
+ end
50
+
51
+ sub_test_case("not exist") do
52
+ test("forward") do
53
+ migrator = create_migrator
54
+ migrator.target_version = 9999_99_99_999999
55
+ assert_equal([
56
+ 20170301061420,
57
+ 20170303115054,
58
+ 20170303115135,
59
+ ],
60
+ migrator.each.collect(&:version))
61
+ end
62
+
63
+ test("backward") do
64
+ create_migrator.migrate
65
+
66
+ migrator = create_migrator
67
+ migrator.target_version = -1
68
+ assert_equal([
69
+ 20170303115135,
70
+ 20170303115054,
71
+ 20170301061420,
72
+ ],
73
+ migrator.each.collect(&:version))
74
+ end
75
+ end
76
+ end
77
+
78
+ sub_test_case("#step=") do
79
+ test("positive") do
80
+ migrator = create_migrator
81
+ migrator.step = 2
82
+ assert_equal([
83
+ 20170301061420,
84
+ 20170303115054,
85
+ ],
86
+ migrator.each.collect(&:version))
87
+ end
88
+
89
+ test("too large") do
90
+ migrator = create_migrator
91
+ migrator.step = 4
92
+ assert_equal([
93
+ 20170301061420,
94
+ 20170303115054,
95
+ 20170303115135,
96
+ ],
97
+ migrator.each.collect(&:version))
98
+ end
99
+
100
+ test("negative") do
101
+ create_migrator.migrate
102
+
103
+ migrator = create_migrator
104
+ migrator.step = -2
105
+ assert_equal([
106
+ 20170303115135,
107
+ 20170303115054,
108
+ ],
109
+ migrator.each.collect(&:version))
110
+ end
111
+
112
+ test("too small") do
113
+ create_migrator.migrate
114
+
115
+ migrator = create_migrator
116
+ migrator.step = -4
117
+ assert_equal([
118
+ 20170303115135,
119
+ 20170303115054,
120
+ 20170301061420,
121
+ ],
122
+ migrator.each.collect(&:version))
123
+ end
124
+ end
125
+
126
+ sub_test_case("redo") do
127
+ test("first version") do
128
+ migrator = create_migrator
129
+ migrator.target_version = migrator.each.collect(&:version).first
130
+ migrator.migrate
131
+
132
+ migrator = create_migrator
133
+ migrator.step = -1
134
+ migrator.migrate
135
+ migrator.step = 1
136
+ assert_equal([
137
+ 20170301061420,
138
+ ],
139
+ migrator.each.collect(&:version))
140
+ end
141
+
142
+ test("latest version") do
143
+ migrator = create_migrator
144
+ migrator.migrate
145
+
146
+ migrator = create_migrator
147
+ migrator.step = -1
148
+ migrator.migrate
149
+ migrator.step = 1
150
+ assert_equal([
151
+ 20170303115135,
152
+ ],
153
+ migrator.each.collect(&:version))
154
+ end
155
+ end
156
+ end
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: groonga-client-model
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.0.0
4
+ version: 1.0.1
5
5
  platform: ruby
6
6
  authors:
7
7
  - Kouhei Sutou
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2017-02-07 00:00:00.000000000 Z
11
+ date: 2017-03-09 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: groonga-client
@@ -16,14 +16,14 @@ dependencies:
16
16
  requirements:
17
17
  - - ">="
18
18
  - !ruby/object:Gem::Version
19
- version: 0.4.1
19
+ version: 0.4.2
20
20
  type: :runtime
21
21
  prerelease: false
22
22
  version_requirements: !ruby/object:Gem::Requirement
23
23
  requirements:
24
24
  - - ">="
25
25
  - !ruby/object:Gem::Version
26
- version: 0.4.1
26
+ version: 0.4.2
27
27
  - !ruby/object:Gem::Dependency
28
28
  name: groonga-command-parser
29
29
  requirement: !ruby/object:Gem::Requirement
@@ -145,6 +145,8 @@ files:
145
145
  - lib/groonga_client_model/locale/en.yml
146
146
  - lib/groonga_client_model/locale/ja.yml
147
147
  - lib/groonga_client_model/log_subscriber.rb
148
+ - lib/groonga_client_model/migration.rb
149
+ - lib/groonga_client_model/migrator.rb
148
150
  - lib/groonga_client_model/modelizable.rb
149
151
  - lib/groonga_client_model/modelize.rb
150
152
  - lib/groonga_client_model/railtie.rb
@@ -159,9 +161,14 @@ files:
159
161
  - lib/groonga_client_model/test_helper.rb
160
162
  - lib/groonga_client_model/validations/type_validator.rb
161
163
  - lib/groonga_client_model/version.rb
162
- - lib/rails/generators/groonga_client_model/model/model_generator.rb
164
+ - lib/rails/generators/groonga_client_model/migration/templates/create_table_migration.rb
165
+ - lib/rails/generators/groonga_client_model/migration/templates/delete_config_migration.rb
166
+ - lib/rails/generators/groonga_client_model/migration/templates/migration.rb
167
+ - lib/rails/generators/groonga_client_model/migration/templates/set_config_migration.rb
168
+ - lib/rails/generators/groonga_client_model/migration_generator.rb
163
169
  - lib/rails/generators/groonga_client_model/model/templates/application_groonga_record.rb
164
170
  - lib/rails/generators/groonga_client_model/model/templates/model.rb
171
+ - lib/rails/generators/groonga_client_model/model_generator.rb
165
172
  - test/apps/rails4/Gemfile
166
173
  - test/apps/rails4/Gemfile.lock
167
174
  - test/apps/rails4/README.rdoc
@@ -210,7 +217,9 @@ files:
210
217
  - test/apps/rails4/config/locales/en.yml
211
218
  - test/apps/rails4/config/routes.rb
212
219
  - test/apps/rails4/config/secrets.yml
213
- - test/apps/rails4/db/schema.grn
220
+ - test/apps/rails4/db/groonga/migrate/20170303120517_create_posts.rb
221
+ - test/apps/rails4/db/groonga/migrate/20170303120527_create_terms.rb
222
+ - test/apps/rails4/db/groonga/migrate/20170303120536_create_ages.rb
214
223
  - test/apps/rails4/db/seeds.rb
215
224
  - test/apps/rails4/log/development.log
216
225
  - test/apps/rails4/log/test.log
@@ -221,8 +230,10 @@ files:
221
230
  - test/apps/rails4/public/robots.txt
222
231
  - test/apps/rails4/test/controllers/posts_controller_test.rb
223
232
  - test/apps/rails4/test/factories/posts.rb
233
+ - test/apps/rails4/test/generators/migration_generator_test.rb
224
234
  - test/apps/rails4/test/models/post_test.rb
225
235
  - test/apps/rails4/test/test_helper.rb
236
+ - test/apps/rails4/test/tmp/db/groonga/migrate/20170307045825_set_config_alias_column.rb
226
237
  - test/apps/rails4/tmp/cache/assets/sprockets/v3.0/1v/1vNbaFvqzPuMCPa9LBe2yL962Ncp7RbNREOlE_qe8Ss.cache
227
238
  - test/apps/rails4/tmp/cache/assets/sprockets/v3.0/2F/2FyDjMLF22tXYLEKS6UqrqiSZTKp2HowmRsOZfW2dQs.cache
228
239
  - test/apps/rails4/tmp/cache/assets/sprockets/v3.0/3Q/3QxCnPBwOHO-nainvNGREWb7QnMUKlPsx4AFZgNVVUI.cache
@@ -335,7 +346,9 @@ files:
335
346
  - test/apps/rails5/config/routes.rb
336
347
  - test/apps/rails5/config/secrets.yml
337
348
  - test/apps/rails5/config/spring.rb
338
- - test/apps/rails5/db/schema.grn
349
+ - test/apps/rails5/db/groonga/migrate/20170301061420_create_posts.rb
350
+ - test/apps/rails5/db/groonga/migrate/20170303115054_create_terms.rb
351
+ - test/apps/rails5/db/groonga/migrate/20170303115135_create_ages.rb
339
352
  - test/apps/rails5/db/seeds.rb
340
353
  - test/apps/rails5/log/development.log
341
354
  - test/apps/rails5/log/test.log
@@ -349,9 +362,11 @@ files:
349
362
  - test/apps/rails5/test/controllers/posts_controller_test.rb
350
363
  - test/apps/rails5/test/factories/ages.rb
351
364
  - test/apps/rails5/test/factories/posts.rb
365
+ - test/apps/rails5/test/generators/migration_generator_test.rb
352
366
  - test/apps/rails5/test/models/age_test.rb
353
367
  - test/apps/rails5/test/models/post_test.rb
354
368
  - test/apps/rails5/test/test_helper.rb
369
+ - test/apps/rails5/test/tmp/db/groonga/migrate/20170307081511_remove_title_from_posts.rb
355
370
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/-X/-XSAop9IIcSTUV_xiFS6IsrwsKgzfBrhLSIgb3alOgI.cache
356
371
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/04/04zh1ytKDagWzWcqUyadXtzzohCn9iVvSVG4KrjpfPU.cache
357
372
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/05/05HAjV9iJX9zqV_rpyUQjVkKEvW5kK3XsyZauoD3MGU.cache
@@ -368,6 +383,7 @@ files:
368
383
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/3V/3VDW3Icf6dS8Wm81X2o6wpM2X_XBbxJ1GXVAmLMPkmQ.cache
369
384
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/3d/3dM4S3-yZA5FH03WVgndCHr0XbWKpRNKVDqBbbTkhPo.cache
370
385
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/4N/4NSeDEGAGtTIlzShWYtQoKzyH2QCRAO29qbgVDm9EHc.cache
386
+ - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/5C/5Cws9GLWcOju_f3tIpY01qSaj7zkLAU0a2bQmpf7sS8.cache
371
387
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/5g/5gcXfyU_2YGZzzLIX2HgVkpwSaUUyIH9beyVvR4-RyM.cache
372
388
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/6a/6ae9A4LxsOF8WxXqTRrY_OfmiKLzuX-k8CdxcYhyH2w.cache
373
389
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/6g/6gfb-nNauXmim2itNUscPWKLGmjzBgnE4ee76bNftS4.cache
@@ -450,6 +466,7 @@ files:
450
466
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/Wm/WmtvDDxglSnhmavMeA7WNn7waN3QbagRHeoZHvZJN84.cache
451
467
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/X-/X-qNf54ppJDRBAw7DAsCGjKRMxYoNSukheQbSa8bH3I.cache
452
468
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/X6/X6u2Cul1j8SpBq0WC1S8WhzGiT6f-6L_djUngh_gQfw.cache
469
+ - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/XH/XH9pWZvGgK476BpPGID5z8hjzRmGJjtzV0cHBLXhIKc.cache
453
470
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/XJ/XJRPx7aZ4ajZ72O37hx53ZFkfXSHpDDpCy78LI0leqM.cache
454
471
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/XQ/XQEt3g5gmkRUCX6FcQgFGiKmDzlobkRhbhziRb_zGaQ.cache
455
472
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/Xa/XarP8tNYI88ANDMIKJowbKzLrr5F-ySuKjVJxxYfFQY.cache
@@ -541,9 +558,22 @@ files:
541
558
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/zh/zhmfmdnnow0QqwfT_7IXfN-FAU8qAMm03N7XQjFct6E.cache
542
559
  - test/apps/rails5/tmp/restart.txt
543
560
  - test/run-test.rb
561
+ - test/unit/fixtures/migrate/20170301061420_create_posts.rb
562
+ - test/unit/fixtures/migrate/20170303115054_create_terms.rb
563
+ - test/unit/fixtures/migrate/20170303115135_create_ages.rb
564
+ - test/unit/migration/test_config.rb
565
+ - test/unit/migration/test_copy.rb
566
+ - test/unit/migration/test_create_table.rb
567
+ - test/unit/migration/test_exist.rb
568
+ - test/unit/migration/test_load.rb
569
+ - test/unit/record/test_active_model.rb
570
+ - test/unit/record/test_readers.rb
571
+ - test/unit/record/test_timestamps.rb
572
+ - test/unit/record/test_validators.rb
544
573
  - test/unit/run-test.rb
574
+ - test/unit/test_helper.rb
545
575
  - test/unit/test_load_value_generator.rb
546
- - test/unit/test_record.rb
576
+ - test/unit/test_migrator.rb
547
577
  homepage: https://github.com/ranguba/groonga-client-model
548
578
  licenses:
549
579
  - LGPL-2.1+
@@ -609,6 +639,8 @@ test_files:
609
639
  - test/apps/rails4/test/models/post_test.rb
610
640
  - test/apps/rails4/test/controllers/posts_controller_test.rb
611
641
  - test/apps/rails4/test/test_helper.rb
642
+ - test/apps/rails4/test/tmp/db/groonga/migrate/20170307045825_set_config_alias_column.rb
643
+ - test/apps/rails4/test/generators/migration_generator_test.rb
612
644
  - test/apps/rails4/config/secrets.yml
613
645
  - test/apps/rails4/config/routes.rb
614
646
  - test/apps/rails4/config/boot.rb
@@ -627,8 +659,10 @@ test_files:
627
659
  - test/apps/rails4/config/initializers/wrap_parameters.rb
628
660
  - test/apps/rails4/config/initializers/backtrace_silencers.rb
629
661
  - test/apps/rails4/config/application.rb
662
+ - test/apps/rails4/db/groonga/migrate/20170303120536_create_ages.rb
663
+ - test/apps/rails4/db/groonga/migrate/20170303120527_create_terms.rb
664
+ - test/apps/rails4/db/groonga/migrate/20170303120517_create_posts.rb
630
665
  - test/apps/rails4/db/seeds.rb
631
- - test/apps/rails4/db/schema.grn
632
666
  - test/apps/rails4/README.rdoc
633
667
  - test/apps/rails4/tmp/cache/assets/sprockets/v3.0/Kq/KqE4OB3K1Vvxhxu20J2vygXKabgv57Mk0fYncnRtMVM.cache
634
668
  - test/apps/rails4/tmp/cache/assets/sprockets/v3.0/lL/lL_dWZRBcwCn63yXBT5UzQ-7tnVDndwPc7qVdFgl0tM.cache
@@ -733,6 +767,8 @@ test_files:
733
767
  - test/apps/rails5/test/models/age_test.rb
734
768
  - test/apps/rails5/test/controllers/posts_controller_test.rb
735
769
  - test/apps/rails5/test/test_helper.rb
770
+ - test/apps/rails5/test/tmp/db/groonga/migrate/20170307081511_remove_title_from_posts.rb
771
+ - test/apps/rails5/test/generators/migration_generator_test.rb
736
772
  - test/apps/rails5/config/secrets.yml
737
773
  - test/apps/rails5/config/routes.rb
738
774
  - test/apps/rails5/config/boot.rb
@@ -756,8 +792,10 @@ test_files:
756
792
  - test/apps/rails5/config/initializers/wrap_parameters.rb
757
793
  - test/apps/rails5/config/initializers/backtrace_silencers.rb
758
794
  - test/apps/rails5/config/application.rb
795
+ - test/apps/rails5/db/groonga/migrate/20170303115135_create_ages.rb
796
+ - test/apps/rails5/db/groonga/migrate/20170301061420_create_posts.rb
797
+ - test/apps/rails5/db/groonga/migrate/20170303115054_create_terms.rb
759
798
  - test/apps/rails5/db/seeds.rb
760
- - test/apps/rails5/db/schema.grn
761
799
  - test/apps/rails5/README.md
762
800
  - test/apps/rails5/tmp/restart.txt
763
801
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/0M/0M4bZ4tQh0MQYZMb72U5yr-ELStAsUSb8akkTME9TPM.cache
@@ -821,6 +859,7 @@ test_files:
821
859
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/x7/x7PYh8DJvPykcEqpVab2vcY9-GFz-3cqtoMlRAu94Uc.cache
822
860
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/lU/lUMILltXZTewdRkBDoaTN8YqP2HTEgG8pRHm-uwXGq8.cache
823
861
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/Ot/OttEu6oltiTErpVGZQJA3vWOb24u3_w28yMEG-Gs0tA.cache
862
+ - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/XH/XH9pWZvGgK476BpPGID5z8hjzRmGJjtzV0cHBLXhIKc.cache
824
863
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/he/heptoj4xFW23bqbGAnQ2g6MsS3OKgswQZOu4EFQA9CE.cache
825
864
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/UA/UA-vI1pm6jjLk0HMTm32_Q8qSf6kl82Zqp4qHppaHTs.cache
826
865
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/oU/oUgVYeNUmvSbf5MWq5a-nknLIlepM8oMGSWyD1J5bzg.cache
@@ -857,6 +896,7 @@ test_files:
857
896
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/Dc/Dcujr9N54L76juPEo4EOYs8buHy8vO2fp-AjoG42-uQ.cache
858
897
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/30/30KT5QAalVCZ4YvGLiiqiwP8Nqarv9udTdHtvrO1tyY.cache
859
898
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/pO/pO91-alTEvoJQwAf99ZO4MPNXR6GFVPYAGKgUwXp4_8.cache
899
+ - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/5C/5Cws9GLWcOju_f3tIpY01qSaj7zkLAU0a2bQmpf7sS8.cache
860
900
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/Lh/LhyvxY5uggGRDtBr5Oh5yXF5Hqhw1P-jwI3t-WALBtA.cache
861
901
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/3F/3Fsw9a9YyB3-WaDSpA1HTGJrWn_7xMLLpUYcNv4f4zs.cache
862
902
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/TJ/TJYJYIRzfatw62Fqd4utqJCOWBRwwxagtiwaal6YgMY.cache
@@ -948,6 +988,19 @@ test_files:
948
988
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/yZ/yZz4rIdiAxAUWJ7Io7t9ZdVN8fjEjgzn8MfNKrBdIR0.cache
949
989
  - test/apps/rails5/tmp/cache/assets/sprockets/v3.0/FT/FTiuNlnEJN59jNEEgEfQazsLhj_YTdIQnCuFC2EM7qw.cache
950
990
  - test/run-test.rb
991
+ - test/unit/migration/test_copy.rb
992
+ - test/unit/migration/test_exist.rb
993
+ - test/unit/migration/test_config.rb
994
+ - test/unit/migration/test_load.rb
995
+ - test/unit/migration/test_create_table.rb
996
+ - test/unit/fixtures/migrate/20170303115135_create_ages.rb
997
+ - test/unit/fixtures/migrate/20170301061420_create_posts.rb
998
+ - test/unit/fixtures/migrate/20170303115054_create_terms.rb
951
999
  - test/unit/run-test.rb
952
- - test/unit/test_record.rb
1000
+ - test/unit/record/test_timestamps.rb
1001
+ - test/unit/record/test_validators.rb
1002
+ - test/unit/record/test_readers.rb
1003
+ - test/unit/record/test_active_model.rb
1004
+ - test/unit/test_migrator.rb
1005
+ - test/unit/test_helper.rb
953
1006
  - test/unit/test_load_value_generator.rb