Sha256: 734b0deb6b56f824317a458dff43c89d22e70d3f4e3f06165904e1882b83498c

Contents?: true

Size: 1.75 KB

Versions: 9

Compression:

Stored size: 1.75 KB

Contents

require 'test_helper'

class FavoritesControllerTest < ActionController::TestCase
  fixtures :clippings, :users, :roles

  def setup
    Favorite.destroy_all
  end
  
  def test_should_create_favorite_as_logged_in_user
    login_as :quentin
    assert_difference Favorite, :count, 1 do
      post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'
    end
    assert_response :success
  end
  
  def test_should_create_favorite_anonymously
    assert_difference Favorite, :count, 1 do
      post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'
    end
    assert_response :success
  end

  def test_should_receive_error_when_double_favoriting_as_logged_in_user
    login_as :quentin
    post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'
    post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'
    assert !assigns(:favorite).errors.empty?
  end
  
  def test_should_destroy_favorite
    login_as :quentin    
    post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'    
    
    favorite = users(:quentin).favorites.last

    assert_difference Favorite, :count, -1 do
      delete :destroy, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :id => favorite.id, :format => 'js'    
      assert_response :success
    end
  end
  
  def test_should_get_index
    login_as :quentin
    post :create, :favoritable_type => 'clipping', :favoritable_id => clippings(:google).id, :format => 'js'    
    
    login_as :quentin
    get :index, :user_id => users(:quentin).id
    assert_response :success
  end

end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
community_engine-3.0.0 test/functional/favorites_controller_test.rb
community_engine-2.3.2 test/functional/favorites_controller_test.rb
community_engine-2.3.1 test/functional/favorites_controller_test.rb
community_engine-2.3.0 test/functional/favorites_controller_test.rb
community_engine-2.1.0 test/functional/favorites_controller_test.rb
community_engine-2.0.0 test/functional/favorites_controller_test.rb
community_engine-2.0.0.beta3 test/functional/favorites_controller_test.rb
community_engine-2.0.0.beta2 test/functional/favorites_controller_test.rb
community_engine-2.0.0.beta1 test/functional/favorites_controller_test.rb