質問: Ruby on Railsで開発をしています。 今、テストデータを入れるため、Seedファイルを作るためのspec/factories/xxx.rbの中身を作成中です。 ここでBoolean型にはどんな値を入れたらいいかよくわかりません。 最初はTrue/Falseの文字列を入れようとしましたが、数字の1/0を入れるべきではないかと.. 今のコードは下記の通りです。 is_verified { %w(true false).sample } 下記の通りに直した方がいいですかね。 is_verified { %w(1 0).sample }
回答: true/false、どちらの値でもいいなら ``` is_verified { [true, false].sample } ``` のように書けばいいと思います。(文字列ではなく、true/falseそのものの値をセットする) が、真偽値が実行するたびにフラフラと変わると、毎回テストが成功したり失敗したり、結果が不安定になりそうなので、 ``` is_verified true ``` または ``` is_verified false ``` とどちらか一方に固定した方が普通は安全だと思います。