teratail header banner
teratail header banner
質問するログイン新規登録

質問編集履歴

1

ファイルの追加

2020/06/25 02:28

投稿

oqqu
oqqu

スコア7

title CHANGED
@@ -1,1 +1,1 @@
1
- cookieを保存するログインテスト
1
+ cookieを保存せずにログインするテスト
body CHANGED
@@ -1,7 +1,7 @@
1
1
  チェックボックスでログインしたユーザーのcookieを保存できるようにしましたが、そのテストが分かりません。下記のコードでグリーンになるのですが、テストの3,4行目をコメントアウトしてもグリーンになると思って試してみたところレッドでした。どうしてレッドになるのか分からないです。
2
2
 
3
3
 
4
- ### 該当のソースコード
4
+ ### test/integration/user_login_test.rb
5
5
 
6
6
  ```ruby
7
7
  test "login without remembering" do
@@ -12,4 +12,40 @@
12
12
  log_in_as(@user, remember_me: '0')
13
13
  assert_empty cookies[:remember_token]
14
14
  end
15
+ ```
16
+ ### test/test_helper.rb
17
+ ```ruby
18
+ ENV['RAILS_ENV'] ||= 'test'
19
+ require_relative '../config/environment'
20
+ require 'rails/test_help'
21
+ require "minitest/reporters"
22
+ Minitest::Reporters.use!
23
+
24
+ class ActiveSupport::TestCase
25
+ # Run tests in parallel with specified workers
26
+ parallelize(workers: :number_of_processors)
27
+
28
+ # Setup all fixtures in test/fixtures/*.yml for all tests in alphabetical order.
29
+ fixtures :all
30
+ include ApplicationHelper
31
+
32
+ # Add more helper methods to be used by all tests here...
33
+ def is_logged_in?
34
+ !session[:user_id].nil?
35
+ end
36
+
37
+ def log_in_as(user)
38
+ session[:user_id] = user.id
39
+ end
40
+ end
41
+
42
+ class ActionDispatch::IntegrationTest
43
+
44
+ def log_in_as(user, password: 'password', remember_me: '1')
45
+ post login_path, params: { session: { email: user.email,
46
+ password: password,
47
+ remember_me: remember_me }}
48
+ end
49
+ end
50
+
15
51
  ```