J'ai plusieurs tests d'intégration où certaines des affirmations sont les mêmes. Pour des raisons de maintenabilité, j'aimerais regrouper les assertions communes de chaque test sous une fonction unique.Encapsuler des assertions répétées dans une fonction
test "login with invalid information" do
get login_path
assert_template 'sessions/new'
post login_path, params: { session: { email: "", password: "" } }
assert_template 'sessions/new'
assert_not flash.empty?
get root_path
assert flash.empty?
end
test "login with valid information followed by logout" do
get login_path
assert_template 'sessions/new'
post login_path, params: { session: { email: @user.email, password: "password" } }
.
end
Par exemple, le
get login_path
assert_template 'sessions/new'
bits sont répétées dans les deux tests. Comment puis-je rendre cela plus facile à maintenir?