From 0306732a3d0f851ac2e41636166f832c85b25475 Mon Sep 17 00:00:00 2001 From: Jean-Baptiste Bellet Date: Tue, 25 May 2021 15:29:52 +0200 Subject: [PATCH] Add test for enterprise logo and promo image uploading - Add a fixture image to do the upload thanks to `fixture_file_upload` - Check the response status, the content type and the response body for both logo image and promo image --- .../api/v0/enterprises_controller_spec.rb | 15 ++++++++++++--- spec/fixtures/files/logo.png | Bin 0 -> 6274 bytes 2 files changed, 12 insertions(+), 3 deletions(-) create mode 100644 spec/fixtures/files/logo.png diff --git a/spec/controllers/api/v0/enterprises_controller_spec.rb b/spec/controllers/api/v0/enterprises_controller_spec.rb index cff8140784..609b5329af 100644 --- a/spec/controllers/api/v0/enterprises_controller_spec.rb +++ b/spec/controllers/api/v0/enterprises_controller_spec.rb @@ -75,15 +75,24 @@ describe Api::V0::EnterprisesController, type: :controller do end describe "submitting a valid image" do + let!(:logo) { fixture_file_upload("files/logo.png", "image/png") } before do allow(Enterprise) .to receive(:find_by).with({ permalink: enterprise.id.to_s }) { enterprise } - allow(enterprise).to receive(:update).and_return(true) end - it "I can update enterprise image" do - api_post :update_image, logo: 'a logo', id: enterprise.id + it "I can update enterprise logo image" do + api_post :update_image, logo: logo, id: enterprise.id expect(response.status).to eq 200 + expect(response.content_type).to eq "text/html" + expect(response.body).to match %r{/images/enterprises/logos/\d*/medium/logo\.png\?\d*} + end + + it "I can update enterprise promo image" do + api_post :update_image, promo: logo, id: enterprise.id + expect(response.status).to eq 200 + expect(response.content_type).to eq "text/html" + expect(response.body).to match %r{/images/enterprises/promo_images/\d*/medium/logo\.jpg\?\d*} end end end diff --git a/spec/fixtures/files/logo.png b/spec/fixtures/files/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..c8f2fb0098d154e51ce54e43d21484bdefc9dbf0 GIT binary patch literal 6274 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 literal 0 HcmV?d00001