Sha256: 3a5c6e577e90e74ec852629e9fa5fdb82d293a9e7a74fbd9e477253117fced40
Contents?: true
Size: 1.28 KB
Versions: 5
Compression:
Stored size: 1.28 KB
Contents
# frozen_string_literal: true RSpec.describe RuboCop::Cop::Sequel::ConcurrentIndex do include Spec::Helpers::Migration subject(:cop) { described_class.new } context 'without the concurrent option' do it 'registers an offense without options' do offenses = inspect_source_within_migration(<<~SOURCE) add_index(:products, :name) drop_index(:products, :name) SOURCE expect(offenses.size).to eq(2) end it 'registers an offense with other options' do offenses = inspect_source_within_migration(<<~SOURCE) add_index(:products, :name, unique: true) drop_index(:products, :name, unique: true) SOURCE expect(offenses.size).to eq(2) end it 'registers an offense with composite index' do offenses = inspect_source_within_migration(<<~SOURCE) add_index(:products, [:name, :price], unique: true) drop_index(:products, [:name, :price]) SOURCE expect(offenses.size).to eq(2) end end it 'does not register an offense when using concurrent option' do offenses = inspect_source_within_migration(<<~SOURCE) add_index(:products, :name, unique: true, concurrently: true) drop_index(:products, :name, concurrently: true) SOURCE expect(offenses).to be_empty end end
Version data entries
5 entries across 5 versions & 1 rubygems