回答編集履歴

3

コメントを受けて追記

2020/05/29 23:05

投稿

jnchito
jnchito

スコア357

test CHANGED
@@ -185,3 +185,55 @@
185
185
  こんな説明でいかがでしょうか?
186
186
 
187
187
  何か不明な点があればまたご質問ください。
188
+
189
+
190
+
191
+ ## 追記
192
+
193
+ あ、たしかに`FactoryBot.`を付け忘れてましたね。すいません。コードの方は修正しておきました。
194
+
195
+ ちなみに`spec/rails_helper.rb`に`config.include FactoryBot::Syntax::Methods`という設定を入れておくと`FactoryBot.`が省略できます。([参考](https://qiita.com/Ushinji/items/522ed01c9c14b680222c#4-factory_bot%E3%81%AE%E8%A8%AD%E5%AE%9A))
196
+
197
+ 僕はふだんこのスタイルでFactoryBotを使ってます。
198
+
199
+
200
+
201
+ コメントに載っていたコードですが、
202
+
203
+
204
+
205
+ ```ruby
206
+
207
+ it "userが作成されたらprojectが5個作成される" do
208
+
209
+ project = FactoryBot.create(:user, :with_projects)
210
+
211
+ expect(project.projects.length).to eq 5
212
+
213
+ end
214
+
215
+ ```
216
+
217
+
218
+
219
+ は、
220
+
221
+
222
+
223
+ ```ruby
224
+
225
+ it "userが作成されたらprojectが5個作成される" do
226
+
227
+ user = FactoryBot.create(:user, :with_projects)
228
+
229
+ expect(user.projects.length).to eq 5
230
+
231
+ end
232
+
233
+ ```
234
+
235
+
236
+
237
+ というように変数名を`user`にした方がわかりやすいと思いました。
238
+
239
+ それ以外はOKだと思います????

2

コードの修正

2020/05/29 23:05

投稿

jnchito
jnchito

スコア357

test CHANGED
@@ -60,7 +60,7 @@
60
60
 
61
61
  5.times do
62
62
 
63
- create :note, project: project
63
+ FactoryBot.create :note, project: project
64
64
 
65
65
  end
66
66
 

1

URL修正

2020/05/29 22:53

投稿

jnchito
jnchito

スコア357

test CHANGED
@@ -8,7 +8,7 @@
8
8
 
9
9
  なお、以下のサンプルコードはEveryday RailsのGitHubリポジトリから抜粋しています。
10
10
 
11
- https://github.com/everydayrails/everydayrails-rspec-2017
11
+ [https://github.com/everydayrails/everydayrails-rspec-2017](https://github.com/everydayrails/everydayrails-rspec-2017)
12
12
 
13
13
 
14
14