From 490864e24d389da2edc5e01c30621a2a7d81a0f3 Mon Sep 17 00:00:00 2001 From: evazion Date: Sun, 5 Feb 2017 02:04:43 -0600 Subject: [PATCH] tests: add saved searches controller tests. --- .../saved_searches_controller_test.rb | 7 --- test/factories/saved_search.rb | 4 +- .../saved_searches_controller_test.rb | 60 +++++++++++++++++++ 3 files changed, 63 insertions(+), 8 deletions(-) delete mode 100644 test/controllers/saved_searches_controller_test.rb create mode 100644 test/functional/saved_searches_controller_test.rb diff --git a/test/controllers/saved_searches_controller_test.rb b/test/controllers/saved_searches_controller_test.rb deleted file mode 100644 index 58f1f29aa..000000000 --- a/test/controllers/saved_searches_controller_test.rb +++ /dev/null @@ -1,7 +0,0 @@ -require 'test_helper' - -class SavedSearchesControllerTest < ActionController::TestCase - # test "the truth" do - # assert true - # end -end diff --git a/test/factories/saved_search.rb b/test/factories/saved_search.rb index 7940ca213..44d81152e 100644 --- a/test/factories/saved_search.rb +++ b/test/factories/saved_search.rb @@ -1,5 +1,7 @@ FactoryGirl.define do factory(:saved_search) do - tag_query "aaa" + tag_query { FFaker::Lorem.words } + category { FFaker::Lorem.word } + user end end diff --git a/test/functional/saved_searches_controller_test.rb b/test/functional/saved_searches_controller_test.rb new file mode 100644 index 000000000..89263ad66 --- /dev/null +++ b/test/functional/saved_searches_controller_test.rb @@ -0,0 +1,60 @@ +require 'test_helper' +require 'helpers/saved_search_test_helper' + +class SavedSearchesControllerTest < ActionController::TestCase + include SavedSearchTestHelper + + context "The saved searches controller" do + setup do + @user = FactoryGirl.create(:user) + CurrentUser.user = @user + CurrentUser.ip_addr = "127.0.0.1" + mock_saved_search_service! + end + + context "index action" do + should "render" do + get :index, {}, { user_id: @user.id } + assert_response :success + end + end + + context "create action" do + should "render" do + params = { saved_search_tags: "bkub", saved_search_category: "artist" } + + post :create, params, { user_id: @user.id } + assert_response :redirect + end + end + + context "edit action" do + should "render" do + saved_search = FactoryGirl.create(:saved_search, user: @user) + + get :edit, { id: saved_search.id }, { user_id: @user.id } + assert_response :success + end + end + + context "update action" do + should "render" do + saved_search = FactoryGirl.create(:saved_search, user: @user) + params = { id: saved_search.id, saved_search: { category: "foo" } } + + put :update, params, { user_id: @user.id } + assert_redirected_to saved_searches_path + assert_equal("foo", saved_search.reload.category) + end + end + + context "destroy action" do + should "render" do + saved_search = FactoryGirl.create(:saved_search, user: @user) + + delete :destroy, { id: saved_search.id }, { user_id: @user.id } + assert_redirected_to saved_searches_path + end + end + end +end