Sha256: 49708f278a64065861af454673d6415e22e3a73f3e5e5dddc47563351627ec10

Contents?: true

Size: 1.81 KB

Versions: 16

Compression:

Stored size: 1.81 KB

Contents

require 'spec_helper'

describe Picky::Index do

  context 'without stubbed categories' do
    before(:each) do
      @index = described_class.new :some_index_name
    end

    describe 'define_category' do
      it 'adds a new category to the categories' do
        @index.define_category :some_category_name

        @index.categories.categories.size.should == 1
      end
      it 'returns the new category' do
        @index.define_category(:some_category_name).should be_kind_of(Picky::Category)
      end
    end
  end

  context "with stubbed categories" do
    before(:each) do
      @categories = stub :categories

      @index = described_class.new :some_name
      @index.define_category :some_category_name1
      @index.define_category :some_category_name2

      @index.stub! :categories => @categories
    end

    describe "load" do
      it "delegates to each category" do
        @categories.should_receive(:load).once.with

        @index.load
      end
    end
    describe "possible_combinations" do
      it "delegates to the combinator" do
        @categories.should_receive(:possible_combinations).once.with :some_token

        @index.possible_combinations :some_token
      end
    end
  end

  context 'result_identifier' do
    context 'with it set' do
      let(:index) do
        described_class.new :some_name do
          result_identifier :some_identifier
        end
      end
      it 'has an after_indexing set' do
        index.result_identifier.should == :some_identifier
      end
    end
    context 'with it not set' do
      let(:index) do
        described_class.new :some_name do
        end
      end
      it 'returns the name' do
        index.result_identifier.should == :some_name
      end
    end
  end

  context "no categories" do
    it "works" do
      described_class.new :some_name
    end
  end

end

Version data entries

16 entries across 16 versions & 1 rubygems

Version Path
picky-3.6.16 spec/lib/index_indexed_spec.rb
picky-3.6.15 spec/lib/index_indexed_spec.rb
picky-3.6.14 spec/lib/index_indexed_spec.rb
picky-3.6.13 spec/lib/index_indexed_spec.rb
picky-3.6.12 spec/lib/index_indexed_spec.rb
picky-3.6.11 spec/lib/index_indexed_spec.rb
picky-3.6.10 spec/lib/index_indexed_spec.rb
picky-3.6.9 spec/lib/index_indexed_spec.rb
picky-3.6.8 spec/lib/index_indexed_spec.rb
picky-3.6.7 spec/lib/index_indexed_spec.rb
picky-3.6.6 spec/lib/index_indexed_spec.rb
picky-3.6.4 spec/lib/index_indexed_spec.rb
picky-3.6.3 spec/lib/index_indexed_spec.rb
picky-3.6.2 spec/lib/index_indexed_spec.rb
picky-3.6.1 spec/lib/index_indexed_spec.rb
picky-3.6.0 spec/lib/index_indexed_spec.rb