Sha256: 57f05e3a97531c39994f105fdde3d23e16c98247cf27b92dd9d2fbd33ac2ea34

Contents?: true

Size: 1.06 KB

Versions: 3

Compression:

Stored size: 1.06 KB

Contents

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

describe "flash messages with blocks", :type => :controller do
  setup = lambda {
    class PiratesController < ActionController::Base
      expose_many(:pirates)
      PiratesController.flash_for :create do
        "the flash is set to #{@pirate.title}"
      end
    end 
  }
  setup.call
  
  ActionController::Routing::Routes.draw do |map| 
    map.resources :pirates, :collection => {:test => :any}
  end
  
  controller_name :pirates
  Object.remove_class(PiratesController)
  
  before(:each) do
    setup.call
    @controller = PiratesController.new
    @request    = ActionController::TestRequest.new
    @response   = ActionController::TestResponse.new
    
    @pirate = Factory.stub(:pirate, {:title => 'Captain'})
    Pirate.stub(:new => @pirate)
    
    @pirate.stub(:save => true)
    
    @custom_flash_message = "the flash is set to #{@pirate.title}"
    
    post(:create)
  end
  
  after(:each) do
    Object.remove_class(PiratesController)
  end
  
  it { should set_the_flash.to(@custom_flash_message) }
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
exposure-0.1.1 spec/flashers/flash_with_block_spec.rb
exposure-0.1.0 spec/flashers/flash_with_block_spec.rb
exposure-0.0.7 spec/flashers/flash_with_block_spec.rb