Sha256: 643c046ac90ba495c46d6df133df682b2143f2bddbddae0b38efebdd22b16c93

Contents?: true

Size: 2 KB

Versions: 21

Compression:

Stored size: 2 KB

Contents

require File.dirname(__FILE__) + '/spec_helper'

describe 'request lifecycle', :type => :controller do
  before(:each) do
    Sunspot::Rails.configuration = @configuration = Sunspot::Rails::Configuration.new
  end

  after(:each) do
    Sunspot::Rails.configuration = nil
  end
  controller_name :posts

  it 'should automatically commit after each action if specified' do
    @configuration.user_configuration = { 'auto_commit_after_request' => true }
    Sunspot.should_receive(:commit_if_dirty)
    post :create, :post => { :title => 'Test 1' }
  end
  
  it 'should not commit, if configuration is set to false' do
    @configuration.user_configuration = { 'auto_commit_after_request' => false }
    Sunspot.should_not_receive(:commit_if_dirty)
    post :create, :post => { :title => 'Test 1' }
  end

  it 'should commit if configuration is not specified' do
    @configuration.user_configuration = {}
    Sunspot.should_receive(:commit_if_dirty)
    post :create, :post => { :title => 'Test 1' }
  end
  
  ### auto_commit_if_delete_dirty
  
  it 'should automatically commit after each delete if specified' do
    @configuration.user_configuration = { 'auto_commit_after_request' => false,
                                          'auto_commit_after_delete_request' => true }
    Sunspot.should_receive(:commit_if_delete_dirty)
    post :create, :post => { :title => 'Test 1' }
  end
  
  it 'should not automatically commit on delete if configuration is set to false' do
    @configuration.user_configuration = { 'auto_commit_after_request' => false,
                                          'auto_commit_after_delete_request' => false }
    Sunspot.should_not_receive(:commit_if_delete_dirty)
    post :create, :post => { :title => 'Test 1' }
  end

  it 'should not automatically commit on delete if configuration is not specified' do
    @configuration.user_configuration = { 'auto_commit_after_request' => false }
    Sunspot.should_not_receive(:commit_if_delete_dirty)
    post :create, :post => { :title => 'Test 1' }
  end
end

Version data entries

21 entries across 21 versions & 5 rubygems

Version Path
ruben_sunspot_rails-1.1.4 spec/request_lifecycle_spec.rb
ruben_sunspot_rails-1.1.3 spec/request_lifecycle_spec.rb
ruben_sunspot_rails-1.1.2 spec/request_lifecycle_spec.rb
ruben_sunspot_rails-1.1.1 spec/request_lifecycle_spec.rb
ruben_sunspot_rails-1.1.0 spec/request_lifecycle_spec.rb
nuatt_sunspot_rails-1.1.0.3 spec/request_lifecycle_spec.rb
robsharp-sunspot_rails-1.1.0.2 spec/request_lifecycle_spec.rb
sunspot_rails-1.1.0 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.5 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.4 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.3 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.2 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.1 spec/request_lifecycle_spec.rb
sunspot_rails-1.0.0 spec/request_lifecycle_spec.rb
sunspot_rails-0.11.5 spec/request_lifecycle_spec.rb
sunspot_rails-0.11.4 spec/request_lifecycle_spec.rb
nxa-sunspot_rails-0.11.3 spec/request_lifecycle_spec.rb
sunspot_rails-0.11.3 spec/request_lifecycle_spec.rb
sunspot_rails-0.11.2 spec/request_lifecycle_spec.rb
sunspot_rails-0.11.1 spec/request_lifecycle_spec.rb