Sha256: 804380c7937a9fa5529accdc21729e761441147db93e12a34539bcaf45c8a528

Contents?: true

Size: 1.51 KB

Versions: 35

Compression:

Stored size: 1.51 KB

Contents

require 'spec_helper'

describe Picky::Indexes do

  context 'after initialize' do
    let(:indexes) { described_class.new }
    it 'has an empty mapping' do
      indexes.index_mapping.should == {}
    end
    it 'has no indexes' do
      indexes.indexes.should == []
    end
  end
  
  describe 'methods' do
    let(:indexes) { described_class.new }
    before(:each) do
      @index1 = stub :index1, :name => :index1
      @index2 = stub :index2, :name => :index2
      indexes.register @index1
      indexes.register @index2
    end
    describe '[]' do
      it 'should use the mapping' do
        indexes[:index2].should == @index2
      end
      it 'should allow strings' do
        indexes['index1'].should == @index1
      end
    end
    describe 'register' do
      it 'should have indexes' do
        indexes.indexes.should == [@index1, @index2]
      end
      it 'should have a mapping' do
        indexes.index_mapping.should == { :index1 => @index1, :index2 => @index2 }
      end
    end
    describe 'clear' do
      it 'clears the indexes' do
        indexes.clear_indexes
        
        indexes.indexes.should == []
      end
      it 'clears the mapping' do
        indexes.clear_indexes
        
        indexes.index_mapping.should == {}
      end
    end
    describe 'reload' do
      it 'calls load_from_cache on each in order' do
        @index1.should_receive(:load_from_cache).once.with.ordered
        @index2.should_receive(:load_from_cache).once.with.ordered

        indexes.reload
      end
    end
  end
  
end

Version data entries

35 entries across 35 versions & 1 rubygems

Version Path
picky-3.5.4 spec/lib/indexes_indexed_spec.rb
picky-3.5.3 spec/lib/indexes_indexed_spec.rb
picky-3.5.2 spec/lib/indexes_indexed_spec.rb
picky-3.5.1 spec/lib/indexes_indexed_spec.rb
picky-3.5.0 spec/lib/indexes_indexed_spec.rb
picky-3.4.3 spec/lib/indexes_indexed_spec.rb
picky-3.4.2 spec/lib/indexes_indexed_spec.rb
picky-3.4.1 spec/lib/indexes_indexed_spec.rb
picky-3.4.0 spec/lib/indexes_indexed_spec.rb
picky-3.3.3 spec/lib/indexes_indexed_spec.rb
picky-3.3.2 spec/lib/indexes_indexed_spec.rb
picky-3.3.1 spec/lib/indexes_indexed_spec.rb
picky-3.3.0 spec/lib/indexes_indexed_spec.rb
picky-3.2.0 spec/lib/indexes_indexed_spec.rb
picky-3.1.13 spec/lib/indexes_indexed_spec.rb
picky-3.1.12 spec/lib/indexes_indexed_spec.rb
picky-3.1.11 spec/lib/indexes_indexed_spec.rb
picky-3.1.10 spec/lib/indexes_indexed_spec.rb
picky-3.1.9 spec/lib/indexes_indexed_spec.rb
picky-3.1.8 spec/lib/indexes_indexed_spec.rb