padrino-gen 0.18.0 → 0.18.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.
- checksums.yaml +4 -4
- data/lib/padrino-gen/padrino-tasks/activerecord.rb +5 -1
- data/test/test_activerecord_tasks.rb +16 -0
- metadata +7 -7
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: c4448d5c06e96f94cb3a755c45aad78cc4c165a46d2bbfd5e0e4877752a3c62e
|
|
4
|
+
data.tar.gz: 9369d73576359e1e6822fcf5b1e16ed7d9b260d58e590e68ec1b05f4a72aae07
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: ce8e276bf3f3798b3b79e3a191468cdfcd4f27a26310d1cb50507adaf54e59140296aa9bb051d7d83dfbe082be52f8d44649baa798837291e175535269043ca2
|
|
7
|
+
data.tar.gz: 19f53b8782f89cda59af35268bc5bca05fc45b9be2ea39180898979855548f06253378a0f9d5614532e2e3926a5a15414b23aaa7dc7e14350788d87867d1bab9
|
|
@@ -242,7 +242,10 @@ if PadrinoTasks.load?(:activerecord, defined?(ActiveRecord))
|
|
|
242
242
|
desc 'Create a db/schema.rb file that can be portably used against any DB supported by AR.'
|
|
243
243
|
task dump: :skeleton do
|
|
244
244
|
require 'active_record/schema_dumper'
|
|
245
|
-
|
|
245
|
+
# A project on a database server has no db/ until its first migration is generated.
|
|
246
|
+
schema_file = ENV['SCHEMA'] || Padrino.root('db', 'schema.rb')
|
|
247
|
+
FileUtils.mkdir_p(File.dirname(schema_file))
|
|
248
|
+
File.open(schema_file, 'w') do |file|
|
|
246
249
|
ActiveRecord::SchemaDumper.dump(schema_dumper_source, file)
|
|
247
250
|
end
|
|
248
251
|
Rake::Task['ar:schema:dump'].reenable
|
|
@@ -261,6 +264,7 @@ if PadrinoTasks.load?(:activerecord, defined?(ActiveRecord))
|
|
|
261
264
|
namespace :structure do
|
|
262
265
|
desc 'Dump the database structure to a SQL file.'
|
|
263
266
|
task dump: :skeleton do
|
|
267
|
+
FileUtils.mkdir_p(File.dirname(resolve_structure_sql))
|
|
264
268
|
with_database(Padrino.env) do |config|
|
|
265
269
|
case config[:adapter]
|
|
266
270
|
when 'mysql', 'mysql2', 'em_mysql2', 'oci', 'oracle', 'jdbcmysql'
|
|
@@ -142,6 +142,13 @@ describe 'ActiveRecord tasks' do
|
|
|
142
142
|
assert_match(/create_table "widgets"/, schema)
|
|
143
143
|
end
|
|
144
144
|
|
|
145
|
+
it 'should migrate a new project on a server database, which has no db directory yet' do
|
|
146
|
+
FileUtils.rm_rf(File.join(@root, 'db'))
|
|
147
|
+
File.write(File.join(@root, 'config', 'boot.rb'), File.read(File.join(@root, 'config', 'boot.rb')).sub("Padrino.root('db', 'development.db')", "Padrino.root('development.db')"))
|
|
148
|
+
rake('ar:migrate')
|
|
149
|
+
assert_includes schema, 'ActiveRecord::Schema'
|
|
150
|
+
end
|
|
151
|
+
|
|
145
152
|
it 'should dump the schema after ar:migrate:down and ar:migrate:up' do
|
|
146
153
|
rake 'ar:migrate'
|
|
147
154
|
rake 'ar:migrate:down', 'MIGRATION_VERSION=1'
|
|
@@ -163,6 +170,15 @@ describe 'ActiveRecord tasks' do
|
|
|
163
170
|
assert_match(/INSERT INTO "schema_migrations" \(version\) VALUES\s*\('1'\)/, structure)
|
|
164
171
|
end
|
|
165
172
|
|
|
173
|
+
it 'should dump the structure when there is no db directory yet' do
|
|
174
|
+
skip_without_sqlite_cli
|
|
175
|
+
File.write(File.join(@root, 'config', 'boot.rb'), File.read(File.join(@root, 'config', 'boot.rb')).sub("Padrino.root('db', 'development.db')", "Padrino.root('development.db')"))
|
|
176
|
+
rake 'ar:migrate'
|
|
177
|
+
FileUtils.rm_rf(File.join(@root, 'db'))
|
|
178
|
+
rake 'ar:structure:dump'
|
|
179
|
+
assert_file_exists File.join(@root, 'db', 'development_structure.sql')
|
|
180
|
+
end
|
|
181
|
+
|
|
166
182
|
def rake_failing(*args)
|
|
167
183
|
libs = %w[padrino-core padrino-gen].flat_map { |name| ['-I', File.expand_path("../../#{name}/lib", __dir__)] }
|
|
168
184
|
env = { 'RACK_ENV' => 'development', 'BUNDLE_GEMFILE' => File.expand_path('../../Gemfile', __dir__) }
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: padrino-gen
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 0.18.
|
|
4
|
+
version: 0.18.1
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Padrino Team
|
|
@@ -19,14 +19,14 @@ dependencies:
|
|
|
19
19
|
requirements:
|
|
20
20
|
- - '='
|
|
21
21
|
- !ruby/object:Gem::Version
|
|
22
|
-
version: 0.18.
|
|
22
|
+
version: 0.18.1
|
|
23
23
|
type: :runtime
|
|
24
24
|
prerelease: false
|
|
25
25
|
version_requirements: !ruby/object:Gem::Requirement
|
|
26
26
|
requirements:
|
|
27
27
|
- - '='
|
|
28
28
|
- !ruby/object:Gem::Version
|
|
29
|
-
version: 0.18.
|
|
29
|
+
version: 0.18.1
|
|
30
30
|
- !ruby/object:Gem::Dependency
|
|
31
31
|
name: bundler
|
|
32
32
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -53,28 +53,28 @@ dependencies:
|
|
|
53
53
|
requirements:
|
|
54
54
|
- - '='
|
|
55
55
|
- !ruby/object:Gem::Version
|
|
56
|
-
version: 0.18.
|
|
56
|
+
version: 0.18.1
|
|
57
57
|
type: :development
|
|
58
58
|
prerelease: false
|
|
59
59
|
version_requirements: !ruby/object:Gem::Requirement
|
|
60
60
|
requirements:
|
|
61
61
|
- - '='
|
|
62
62
|
- !ruby/object:Gem::Version
|
|
63
|
-
version: 0.18.
|
|
63
|
+
version: 0.18.1
|
|
64
64
|
- !ruby/object:Gem::Dependency
|
|
65
65
|
name: padrino-mailer
|
|
66
66
|
requirement: !ruby/object:Gem::Requirement
|
|
67
67
|
requirements:
|
|
68
68
|
- - '='
|
|
69
69
|
- !ruby/object:Gem::Version
|
|
70
|
-
version: 0.18.
|
|
70
|
+
version: 0.18.1
|
|
71
71
|
type: :development
|
|
72
72
|
prerelease: false
|
|
73
73
|
version_requirements: !ruby/object:Gem::Requirement
|
|
74
74
|
requirements:
|
|
75
75
|
- - '='
|
|
76
76
|
- !ruby/object:Gem::Version
|
|
77
|
-
version: 0.18.
|
|
77
|
+
version: 0.18.1
|
|
78
78
|
description: Generators for easily creating and building padrino applications from
|
|
79
79
|
the console
|
|
80
80
|
email: padrinorb@gmail.com
|