Project

General

Profile

Download (1.99 KB) Statistics
| Branch: | Tag: | Revision:
require 'test_helper'

class BookmarksControllerTest < ActionController::TestCase
setup do
@factory_options = [{:controller => "users"}]
end

basic_pagination_per_page_test
basic_pagination_rendered_test

test "should get index" do
get :index, session: set_session_user
assert_response :success
assert_not_nil assigns(:bookmarks)
end

test "should get edit" do
get :edit, params: { :id => bookmarks(:one).to_param }, session: set_session_user
assert_response :success
end

test "should update bookmark" do
put :update, params: { :id => bookmarks(:one).to_param, :bookmark => { :name => 'bar' } }, session: set_session_user
assert_redirected_to bookmarks_path
end

test "should destroy bookmark" do
assert_difference('Bookmark.count', -1) do
delete :destroy, params: { :id => bookmarks(:one).to_param }, session: set_session_user
end
assert_redirected_to bookmarks_path
end

test "should only show public and user's bookmarks" do
get :index, session: set_session_user
assert_response :success
assert_includes assigns(:bookmarks), bookmarks(:one)
refute_includes assigns(:bookmarks), bookmarks(:two)
end

test "should not allow actions on non public/non user bookmarks" do
put :update, params: { :id => bookmarks(:two).to_param, :bookmark => { :name => 'bar' } }, session: set_session_user
assert_response 404

get :edit, params: { :id => bookmarks(:two).to_param }, session: set_session_user
assert_response 404
end

test "should search by name" do
get :index, params: { :search => "name=\"foo\"" }, session: set_session_user
assert_response :success
refute_empty assigns(:bookmarks)
assert assigns(:bookmarks).include?(bookmarks(:one))
end

test "should search by controller" do
get :index, params: { :search => "controller=hosts" }, session: set_session_user
assert_response :success
refute_empty assigns(:bookmarks)
assert assigns(:bookmarks).include?(bookmarks(:one))
end
end
(7-7/53)