tdd - How to fix rails integration users_login_test.rb test after changing /members URL? -
i've been modifying site built following rails tutorial book , i've updated test suite match changes, i'm stumped on how rewrite test.
the logged-in url /
changed /members
require 'test_helper' class userslogintest < actiondispatch::integrationtest def setup @user = users(:michael) end test "login valid information followed logout" login_path post login_path, session: { email: @user.email, password: 'password' } assert is_logged_in? assert_redirected_to @user follow_redirect! assert_template 'users/show' assert_select "a[href=?]", login_path, count: 0 assert_select "a[href=?]", logout_path assert_select "a[href=?]", user_path(@user) delete logout_path assert_not is_logged_in? assert_redirected_to root_url # simulate user clicking logout in second window. delete logout_path follow_redirect! assert_select "a[href=?]", login_path assert_select "a[href=?]", logout_path, count: 0 assert_select "a[href=?]", user_path(@user), count: 0 end test "login remembering" log_in_as(@user, remember_me: '1') assert_not_nil cookies['remember_token'] end test "login without remembering" log_in_as(@user, remember_me: '0') assert_nil cookies['remember_token'] end end
the error returned is:
fail["test_login_with_valid_information_followed_by_logout", userslogintest, 2015-06-18 19:42:46 +0800] test_login_with_valid_information_followed_by_logout#userslogintest (1434627766.77s) expected response redirect <http://www.example.com/users/762146111> redirect <http://www.example.com/members>. expected "http://www.example.com/users/762146111" === "http://www.example.com/members". test/integration/users_login_test.rb:13:in `block in <class:userslogintest>'
edit
routes:
rails.application.routes.draw 'members' => 'members#index' 'covers/new_cover' => 'covers#new_cover', :as => :new_cover 'covers/home' 'covers/new' 'covers/create' 'covers/destroy' 'password_resets/new' 'password_resets/edit' 'account_activations/edit' 'sessions/new' root 'covers#home' 'profile' => 'static_pages#profile' 'tours' => 'static_pages#tours' 'blog' => 'static_pages#blog' 'reviews' => 'static_pages#reviews' 'contact' => 'static_pages#contact' 'signup' => 'users#new' 'login' => 'sessions#new' post 'login' => 'sessions#create' delete 'logout' => 'sessions#destroy' resources :users member :following, :followers end end resources :account_activations, only: [:edit] resources :password_resets, only: [:new, :create, :edit, :update] resources :members, only: [:create, :destroy] resources :microposts, only: [:create, :destroy] resources :relationships, only: [:create, :destroy] resources :covers, only: [:home, :index, :new, :create, :destroy] end
change assert_redirected_to @user
assert_redirected_to members_path
confirm users redirected /members after successful login.
you need update 4 lines after follow_redirect!
assert members template (members/index according routes) appears , confirm content of page.
Comments
Post a Comment