前提・実現したいこと
RSpecによるテストの際にでたエラーを解決したいです
ユーザログイン後のテスト ユーザ一覧画面のテス ト 表示内容の確認 自分と他人のshowリンクがそれぞれ表示される
発生している問題・エラーメッセージ
4) [STEP2] ユーザログイン後のテスト ユーザ一覧画面のテス ト 表示内容の確認 自分と他人のshowリンクがそれぞれ表示され る Failure/Error: expect(page).to have_link 'Show', href: user_path(user) expected to find link "Show" with href "/users/2" but there were no matches
該当のソースコード
controller
1class UsersController < ApplicationController 2 before_action :authenticate_user! 3 4 def show 5 @user = User.find(params[:id]) 6 @books = @user.books #userにはユーザ情報、そこに紐付いているbooksモデル 7 @book = Book.new 8 end 9 10 def index 11 @users = User.all 12 @book = Book.new 13 @user = User.find(current_user.id) 14 end 15 16 def edit 17 @user = User.find(params[:id]) 18 if @user == current_user 19 render "edit" 20 else 21 redirect_to user_path(current_user) 22 end 23 end 24 25 def update 26 @user = User.find(params[:id]) 27 @user.id = current_user.id 28 if @user.update(user_params) 29 redirect_to user_path(@user.id), notice: "You have updated user successfully." 30 else 31 render "edit" 32 end 33 end 34 35 private 36 def user_params 37 params.require(:user).permit(:name, :introduction, :profile_image) 38 end 39 40end
indexhtml
1 <% @user.books.each do |user| %> 2 <tr> 3 <td><%= attachment_image_tag(@book.user, :profile_image, :fill,40,40,fallback: "no-image-icon.jpg")%></td> 4 <td><%= @user.name %></td> 5 <td><%=link_to "Show",user_path(user.id) %></td> 6 </tr> 7 <%end%>
試したこと
いろいろ調べたのですが分かりませんでした。
どなたか教えていただけると幸いです
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
Rails 5.26
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。