Sha256: dc70710909a22a7f8f476495614ba9e203f40f96ce203f605a19c9dc9dd13020

Contents?: true

Size: 997 Bytes

Versions: 7

Compression:

Stored size: 997 Bytes

Contents

# frozen_string_literal: true

require "spec_helper"

describe RuboCop::Cop::Discourse::NoResetColumnInformationInMigrations, :config do
  subject(:cop) { described_class.new(config) }

  let(:config) { RuboCop::Config.new }

  before { config["Discourse/NoResetColumnInformationInMigrations"]["Enabled"] = true }

  it "raises an offense if reset_column_information is used" do
    offenses = inspect_source(<<~RUBY)
      class SomeMigration < ActiveRecord::Migration[6.0]
        def up
          Post.reset_column_information
        end
      end
    RUBY

    expect(offenses.first.message).to match(described_class::MSG)
  end

  it "raise an offense if reset_column_information is used without AR model" do
    offenses = inspect_source(<<~RUBY)
      class SomeMigration < ActiveRecord::Migration[6.0]
        def up
          "post".classify.constantize.reset_column_information
        end
      end
    RUBY

    expect(offenses.first.message).to match(described_class::MSG)
  end
end

Version data entries

7 entries across 7 versions & 1 rubygems

Version Path
rubocop-discourse-3.9.1 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.9.0 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.8.6 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.8.5 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.8.4 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.8.3 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb
rubocop-discourse-3.8.2 spec/lib/rubocop/cop/no_reset_column_information_migrations_spec.rb