database_consistency 1.7.1 → 1.7.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
  SHA256:
3
- metadata.gz: 66ce7a52d5ba8e97db7d362d92c6a40df067f6fbab3945aa0f97ec80017ed265
4
- data.tar.gz: 52b9314bb94e5664cfe791535596ad1de1055e378a37dd0b9f909d595c633a51
3
+ metadata.gz: 206fe7e1ee1028de91d489b10d455e21685383c654fbcfbc4d4e2547d602d3f4
4
+ data.tar.gz: ed3ec0dcdc367e7a666546c5021467d5b30e09675d10db57ef736c3ba608d967
5
5
  SHA512:
6
- metadata.gz: c72b8c701d2e90e4fd981c27a63b6a1369f10af8c51021006cb78bf19d92f24d280c36cbb4654db8929c3f26069769fa8fd23145c444a2fe565dacadadbed7cc
7
- data.tar.gz: 763b0564fe4d78619e5d0ba0245837dbf74634f9480237b1b68f47f04ae5be3dfa2c943aa9da6257ec7b2b6159e1dfef6772a12ca656a3d7de45d916f4c6b10c
6
+ metadata.gz: 254f03f91c90fc4ee1a079ecd467455be99ad3dedbe3703fb2bf3151b1b17e1d01c3b4bc7eb4db43bea685431ffde768c6c48c0e2e9754358b9157640c3e5592
7
+ data.tar.gz: 7e8a87dd238595b25a8040d5196d0c214fc61a12f933d708473445e297d87f6d06f84351245dac4588bdd6a4f69abd2c6e48c8a2bce2deef053ac6e98b61d1a3
@@ -6,10 +6,10 @@ module DatabaseConsistency
6
6
  module_function
7
7
 
8
8
  def adapter
9
- if ActiveRecord::Base.respond_to?(:connection_config)
10
- ActiveRecord::Base.connection_config[:adapter]
11
- else
9
+ if ActiveRecord::Base.respond_to?(:connection_db_config)
12
10
  ActiveRecord::Base.connection_db_config.configuration_hash[:adapter]
11
+ else
12
+ ActiveRecord::Base.connection_config[:adapter]
13
13
  end
14
14
  end
15
15
 
@@ -18,10 +18,10 @@ module DatabaseConsistency
18
18
  end
19
19
 
20
20
  def connection_config(klass)
21
- if klass.respond_to?(:connection_config)
22
- klass.connection_config
23
- else
21
+ if klass.respond_to?(:connection_db_config)
24
22
  klass.connection_db_config.configuration_hash
23
+ else
24
+ klass.connection_config
25
25
  end
26
26
  end
27
27
 
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module DatabaseConsistency
4
- VERSION = '1.7.1'
4
+ VERSION = '1.7.3'
5
5
  end
@@ -15,6 +15,10 @@ module DatabaseConsistency
15
15
  "db/migrate/#{version}_#{name.underscore}.rb"
16
16
  end
17
17
 
18
+ def migration_path_pattern(name)
19
+ "db/migrate/*_#{name.underscore}.rb"
20
+ end
21
+
18
22
  def migration_configuration(name)
19
23
  {
20
24
  migration_name: name.camelcase,
@@ -7,7 +7,13 @@ module DatabaseConsistency
7
7
  include Helpers::Migration
8
8
 
9
9
  def fix!
10
- File.write(migration_path(migration_name), migration)
10
+ file_path = migration_path(migration_name)
11
+
12
+ if Dir[migration_path_pattern(migration_name)].any?
13
+ p "Skipping migration #{migration_name} because it already exists"
14
+ else
15
+ File.write(file_path, migration)
16
+ end
11
17
  end
12
18
 
13
19
  def attributes
@@ -7,7 +7,7 @@ module DatabaseConsistency
7
7
  private
8
8
 
9
9
  def template
10
- 'column is required in the database but do not have presence validator'
10
+ 'column is required in the database but does not have a validator disallowing nil values'
11
11
  end
12
12
 
13
13
  def unique_attributes
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: database_consistency
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.7.1
4
+ version: 1.7.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Evgeniy Demin
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-12-21 00:00:00.000000000 Z
11
+ date: 2023-01-12 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: activerecord