summaryrefslogtreecommitdiff
path: root/rubocop/cop/migration/reversible_add_column_with_default.rb
diff options
context:
space:
mode:
Diffstat (limited to 'rubocop/cop/migration/reversible_add_column_with_default.rb')
-rw-r--r--rubocop/cop/migration/reversible_add_column_with_default.rb35
1 files changed, 0 insertions, 35 deletions
diff --git a/rubocop/cop/migration/reversible_add_column_with_default.rb b/rubocop/cop/migration/reversible_add_column_with_default.rb
deleted file mode 100644
index dd49188defa..00000000000
--- a/rubocop/cop/migration/reversible_add_column_with_default.rb
+++ /dev/null
@@ -1,35 +0,0 @@
-require_relative '../../migration_helpers'
-
-module RuboCop
- module Cop
- module Migration
- # Cop that checks if `add_column_with_default` is used with `up`/`down` methods
- # and not `change`.
- class ReversibleAddColumnWithDefault < RuboCop::Cop::Cop
- include MigrationHelpers
-
- def_node_matcher :add_column_with_default?, <<~PATTERN
- (send nil? :add_column_with_default $...)
- PATTERN
-
- def_node_matcher :defines_change?, <<~PATTERN
- (def :change ...)
- PATTERN
-
- MSG = '`add_column_with_default` is not reversible so you must manually define ' \
- 'the `up` and `down` methods in your migration class, using `remove_column` in `down`'.freeze
-
- def on_send(node)
- return unless in_migration?(node)
- return unless add_column_with_default?(node)
-
- node.each_ancestor(:def) do |def_node|
- next unless defines_change?(def_node)
-
- add_offense(def_node, location: :name)
- end
- end
- end
- end
- end
-end