【Rspec】image_dataを含むモデルのFactoryの作り方
色々試したけども実際にターミナルに出てきたimage_dataをコピペした。
FactoryBot.define do factory :post do content { "MyString" } image_data {"{\"original\":{\"id\":\"da82368d07ad508f3955c85918af11c0\",\"storage\":\"store\",\"metadata\":{\"filename\":null,\"size\":6357,\"mime_type\":\"image/png\"}},\"large\":{\"id\":\"fbee834a18716c8bcdf7d577b5ffd22b.jpg\",\"storage\":\"store\",\"metadata\":{\"filename\":\"image_processing20191011-67690-xsth1h.jpg\",\"size\":1361,\"mime_type\":\"image/jpeg\"}},\"medium\":{\"id\":\"dbe26ddcb28f5fae68aa364fda53af28.jpg\",\"storage\":\"store\",\"metadata\":{\"filename\":\"image_processing20191011-67690-1jr3714.jpg\",\"size\":901,\"mime_type\":\"image/jpeg\"}},\"small\":{\"id\":\"1d2d8908cc977ecfc2eead04b8b9d32a.jpg\",\"storage\":\"store\",\"metadata\":{\"filename\":\"image_processing20191011-67690-1tmg3gv.jpg\",\"size\":436,\"mime_type\":\"image/jpeg\"}}}"} #上のように end end
テストは
context "#create" do it "投稿" do sign_in @user post_params = FactoryBot.attributes_for(:post) expect{ post :create, params: {post: post_params} }.to change(@user.posts, :count).by(1) end end
無事に通った。 とりあえずこれで