imigrate 0.9.2 → 0.9.3

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA1:
3
- metadata.gz: 1f829229337524b1d2ca298ebd1317136e0aaae8
4
- data.tar.gz: adebd41edbf7c1bc23e5df7d64ef0cfd0b62f403
3
+ metadata.gz: 293a3813a278d92a725265259584c2388025ffcb
4
+ data.tar.gz: eca2ddf13e77c05d8b51b06da5888b52c40d5fdb
5
5
  SHA512:
6
- metadata.gz: e90ccdb4a75080e26796f92e87355b3b552a6beb80547afe82347ef9ba9939005a979371a822052f4f0d500cece219b99b30ddb70d6bf33070cfe14078c7498c
7
- data.tar.gz: e67d6f5a716f2d04c465f35af7485bbaecc1d245ee6243b458b16d6a837ca648b47decad35b7c4aa620244bfff472fadab86ffc409b6df78fdafd8a0a8f91f3f
6
+ metadata.gz: 490ec6f3548f6f61d540f1ab32b0c85a68ed983418ddf05df936e802b208b1b531e504fd5ab2917c92dfa8f98414047a5cdc7f59f92f3aad840aad65aa479106
7
+ data.tar.gz: b69de8d08006ee95b22746bb1da610ee99ee41ef16040511ac2046c582f40166c631457ec818f7e6378816820f4e20af35a1144873e1c100aa842cfb6a5d6a88
@@ -11,5 +11,5 @@ module Imigrate
11
11
  @@env_prefix = number
12
12
  end
13
13
  SCHEMA_MIGRATIONS_TABLE_NAME = 'data_migrations'
14
- MIGRATION_PATH = 'db/data'
14
+ MIGRATION_PATH = ['db/data']
15
15
  end
@@ -1,3 +1,3 @@
1
1
  module Imigrate
2
- VERSION = "0.9.2"
2
+ VERSION = "0.9.3"
3
3
  end
@@ -15,6 +15,21 @@ namespace :db do
15
15
  ActiveRecord::Base.schema_migrations_table_name = Imigrate::SCHEMA_MIGRATIONS_TABLE_NAME
16
16
  end
17
17
 
18
+ task :insert_versions => [:environment, :load_config] do
19
+ versions = []
20
+ ActiveRecord::Tasks::DatabaseTasks.migrations_paths.each do |path|
21
+ Dir.foreach(path) do |file|
22
+ # match "20091231235959_some_name.rb" and "001_some_name.rb" pattern
23
+ if match_data = /^(\d{3,})_(.+)\.rb$/.match(file)
24
+ versions << ActiveRecord::SchemaMigration.normalize_migration_number(match_data[1])
25
+ end
26
+ end
27
+ end
28
+ versions.each do |version|
29
+ ActiveRecord::SchemaMigration.create!(:version => version.to_s)
30
+ end
31
+ end
32
+
18
33
  desc 'Migrate data migrations (options: VERSION=x, VERBOSE=false)'
19
34
  task :migrate => [:environment, :load_config] do
20
35
  Rake::Task["db:migrate"].invoke
@@ -71,7 +71,30 @@ describe 'rake tasks' do
71
71
  end
72
72
  end
73
73
 
74
- describe 'db:migrate' do
74
+ describe 'db:setup' do
75
+ before do
76
+ exec_cmd('rake db:drop')
77
+ exec_cmd('git checkout db/schema.rb')
78
+ exec_cmd('rake db:setup')
79
+ insert_migration_test
80
+ exec_cmd('rake db:migrate:all')
81
+ exec_cmd('rake db:drop')
82
+ end
83
+
84
+ it 'does insert data migration version' do
85
+ exec_cmd('rake db:setup')
86
+ exec_cmd('rake db:data:insert_versions')
87
+ expect(get_data_versions).to include('20150202183455')
88
+ end
89
+
90
+ it 'does not insert schema migration version' do
91
+ exec_cmd('rake db:setup')
92
+ exec_cmd('rake db:data:insert_versions')
93
+ expect(get_data_versions).to_not include('20150202174939')
94
+ end
95
+ end
96
+
97
+ describe 'db:migrate' do
75
98
  before do
76
99
  ActiveRecord::Base.establish_connection
77
100
  DatabaseCleaner.clean
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: imigrate
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.9.2
4
+ version: 0.9.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matthieu Paret
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2015-02-04 00:00:00.000000000 Z
11
+ date: 2015-10-14 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rails
@@ -177,7 +177,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
177
177
  version: '0'
178
178
  requirements: []
179
179
  rubyforge_project:
180
- rubygems_version: 2.2.2
180
+ rubygems_version: 2.4.8
181
181
  signing_key:
182
182
  specification_version: 4
183
183
  summary: Rake tasks to migrate data for Rails application.