Sha256: 313457c4c486208b5ae03a821857de0d2b3189ac8b6a758a847df2b5ac17c655

Contents?: true

Size: 1.25 KB

Versions: 55

Compression:

Stored size: 1.25 KB

Contents

require 'spec_helper'

describe ThinkingSphinx::Excerpter do
  before :each do
    @alpha      = Alpha.find(:first)
    @search     = mock 'search', :excerpt_for => 'excerpted value'
    @excerpter  = ThinkingSphinx::Excerpter.new(@search, @alpha)
  end
  
  it "should not respond to id" do
    @excerpter.should_not respond_to(:id)
  end
  
  describe '#method_missing' do
    it "should return the excerpt from Sphinx" do
      @excerpter.name.should == 'excerpted value'
    end
    
    it "should send through the instance class to excerpt_for" do
      @search.should_receive(:excerpt_for) do |string, model|
        model.should == Alpha
      end
      
      @excerpter.name
    end
    
    it "should use attribute methods for excerpts calls" do
      @search.should_receive(:excerpt_for) do |string, model|
        string.should == 'one'
      end
      
      @excerpter.name
    end
    
    it "should use instance methods for excerpts calls" do
      @search.should_receive(:excerpt_for) do |string, model|
        string.should == 'ONE'
      end
      
      @excerpter.big_name
    end
    
    it "should still raise an exception if no column or method exists" do
      lambda {
        @excerpter.foo
      }.should raise_error(NoMethodError)
    end
  end
end

Version data entries

55 entries across 55 versions & 6 rubygems

Version Path
thinking-sphinx-2.0.9 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.9 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.8 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.8 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.7 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.6 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.7 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.5 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.6 spec/thinking_sphinx/excerpter_spec.rb
sayso-thinking-sphinx-2.0.3.002 spec/thinking_sphinx/excerpter_spec.rb
sayso-thinking-sphinx-2.0.3.001 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.4 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.5 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.3 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.4 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.3 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.2 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.2 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-1.4.1 spec/thinking_sphinx/excerpter_spec.rb
thinking-sphinx-2.0.1 spec/thinking_sphinx/excerpter_spec.rb