Sha256: 581df2e91efec402835192020962114e05870ec793fa4712d0dfd019ce4774b7

Contents?: true

Size: 1.44 KB

Versions: 2

Compression:

Stored size: 1.44 KB

Contents

require 'spec_helper'

describe ContactUs::ContactsController do

  describe 'create' do

    before do
      ContactUs.mailer_to = 'test@example.com'
    end

    it 'should redirect with success message if valid contact' do
      ContactUs.success_redirect = nil
      post :create, :contact_us_contact => { :email => 'test@test.com', :message => 'test' }
      assigns(:contact).valid?.should eql(true)
      flash[:notice].should eql('Contact email was successfully sent.')
      response.should redirect_to('/')
    end

    it 'should redirect to custom URL with success message if valid contact' do
      ContactUs.success_redirect = '/success'
      post :create, :contact_us_contact => { :email => 'test@test.com', :message => 'test' }
      assigns(:contact).valid?.should eql(true)
      flash[:notice].should eql('Contact email was successfully sent.')
      response.should redirect_to('/success')
    end

    it 'should render new with error message if invalid contact' do
      post :create, :contact_us_contact => { :email => 'test@test.com', :message => '' }
      assigns(:contact).valid?.should eql(false)
      flash[:error].should eql('You must enter both fields.')
      response.should render_template('new')
    end

  end

  describe 'new' do

    it 'should assign contact for form and render page successfully' do
      get :new
      assigns(:contact).should be_an_instance_of(ContactUs::Contact)
      response.should be_success
    end

  end

end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
contact_us-0.5.1 spec/controllers/contact_us/contact_controller_spec.rb
contact_us-0.5.0 spec/controllers/contact_us/contact_controller_spec.rb