回答編集履歴

1

test環境に特化した条件を判断するためのより良いアルゴリズムを実装した。

2021/11/30 20:13

投稿

MasaSakano
MasaSakano

スコア188

test CHANGED
@@ -16,13 +16,13 @@
16
16
 
17
17
 
18
18
 
19
- 端的には、ある特定の条件において、陽に失敗させます。たとえば、`begin`文の後もしくは`agreement.update_attribute`の直前に、次の一行を加えます。
19
+ 端的には、test環境におけるある特定の条件において、陽に失敗させます。たとえば、`begin`文の後もしくは`agreement.update_attribute`の直前に、次の一行を加えます。
20
20
 
21
21
 
22
22
 
23
23
  ```ruby
24
24
 
25
- raise 'my-error' if 0 == params[:id].to_i
25
+ raise 'my-error' if Rails.env.test? && 0 == params[:id].to_i
26
26
 
27
27
  ```
28
28
 
@@ -32,7 +32,7 @@
32
32
 
33
33
 
34
34
 
35
- もちろんアプリ普通使えば、このID=0 は決してあり得ない、のが必須条件です(Rails用のDBのデフォルト設定では、IDは1から始まるのでこの条件は満たされているでしょう)。
35
+ なお成功テストする場合ID=0 になることはあり得ない、ことを保証るよう、気をつけましょう(Rails用のDBのデフォルト設定では、IDは1から始まるのでこの条件は満たされているでしょう)。
36
36
 
37
37
 
38
38