J'ai un système de référence. Donc, si un utilisateur (pas encore inscrit), visite un lien, il va définir un cookie.Rails/RSpec - Simulation de la requête depuis le même navigateur/session/utilisateur (non connecté). Pour vérifier si un cookie a été défini dans une demande précédente
application_controller.rb
before_action :set_referral
def set_referral
if params[:referral_token].present?
cookies.permanent[:referral_token] = params[:referral_token]
end
end
Ensuite, l'utilisateur peut faire ce qu'ils veulent, et s'ils ont ensuite inscription plus tard, je veux vérifier ce jeton de référence pour donner crédit à l'utilisateur faisant référence.
Est-ce un bon/le meilleur moyen d'y parvenir? Comment puis-je tester cela dans RSpec? J'ai simplement besoin de visiter un itinéraire pour définir le jeton, puis vous inscrire.
referral_spec.rb
get "/some-route", params: {referral_token: "123abc"}, headers: something_here_maybe?
post "/users", params: user_registration_params, headers: same_as_previous_user
Y at-il de toute façon en RSpec pour garantir que les demandes proviennent de la même session du navigateur? Je n'ai pas beaucoup d'expérience avec les cookies/sessions/etc. alors peut-être que toute ma compréhension est fausse ici. Existe-t-il un moyen de tester cela? Y a-t-il un meilleur moyen d'y parvenir?