Sha256: 2b8dac0f6f8fc13aff2763303f3a91949839c1f34c56f20834e683c009417983

Contents?: true

Size: 888 Bytes

Versions: 9

Compression:

Stored size: 888 Bytes

Contents

# frozen_string_literal: true

require_relative '../../../../lib/declare_schema/schema_change/index_remove'

RSpec.describe DeclareSchema::SchemaChange::IndexRemove do
  include_context 'prepare test app'

  let(:table_name) { 'users' }
  let(:column_names) { [:last_name, 'first_name'] }
  let(:name) { 'on_last_name_and_first_name' }
  let(:unique) { true }
  subject { described_class.new(table_name, column_names, name: name, unique: unique) }

  describe '#up/down' do
    describe '#up' do
      it 'responds with command' do
        expect(subject.up).to eq("remove_index :#{table_name}, name: #{name.to_sym.inspect}\n")
      end
    end

    describe '#down' do
      it 'responds with command' do
        expect(subject.down).to eq("add_index :#{table_name}, #{column_names.map(&:to_sym).inspect}, name: #{name.to_sym.inspect}, unique: #{unique}\n")
      end
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
declare_schema-2.3.2 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.3.1 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.3.0 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.3.0.pre.is.0 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.2.1 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.2.0.colin.1 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.2.0 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.1.0 spec/lib/declare_schema/schema_change/index_remove_spec.rb
declare_schema-2.1.0.pre.1 spec/lib/declare_schema/schema_change/index_remove_spec.rb