woshidan's loose leaf

ぼんやり勉強しています

RSpec

RSpecでテストデータ用にファイルを読み込む

RSpecでテスト用のファイルを読み込む RSpecでテスト用のファイルを読み込む際はデフォルトでは spec/fixtures/files にファイルを置いて file_fixture("example.txt").read とすると、ファイルの中身がspec中で呼び出せる。 ファイル中にHTMLやJSONのレスポ…

配列の要素全てが該当する条件を記述するallマッチャ

scopeみたいにフィルタリングした要素について、フィルタリング対象の要素について let(:included) { Item.new(price: 250) } let(:not_included) { Item.new(price: 300) } let(:array) { [included, not_included] } subject(array.filtering) it '250円以…

テスト中のオブジェクトに実際の動作をさせないで返り値を指定する

特定のオブジェクトにあるメソッドの中身を実行せず結果だけ返して欲しい場合 allowとreceiveを使ってスタブの指定をします。 allow(some_object).to receive(:method_name).and_return(return_value) 特定のクラスのインスタンス全てにあるメソッドの中身を…

attributes_forでテスト用のハッシュを取得するときはFactoryに定義された属性しか取り出されない

下準備としてモデルのSchemeとFactoryの定義 # schema.rb ActiveRecord::Schema.define(version: 2020_11_23_064724) do create_table "users", force: :cascade do |t| t.string "name" t.integer "age" t.string "mail" t.datetime "created_at", precisio…