From e42ec4f8aecbc71b34e9c110a2cee783b790ab65 Mon Sep 17 00:00:00 2001 From: Brenda Wallace Date: Fri, 27 Oct 2017 23:43:23 +1300 Subject: [PATCH] Test crop photo display when not signed in --- spec/features/crops/crop_photos_spec.rb | 20 +++++++++++++++----- 1 file changed, 15 insertions(+), 5 deletions(-) diff --git a/spec/features/crops/crop_photos_spec.rb b/spec/features/crops/crop_photos_spec.rb index f1fcb15da..59eba8f38 100644 --- a/spec/features/crops/crop_photos_spec.rb +++ b/spec/features/crops/crop_photos_spec.rb @@ -1,6 +1,7 @@ require 'rails_helper' feature "crop detail page", js: true do + let(:member) { create :member } let(:crop) { create :crop, plantings: [planting], harvests: [harvest] } let(:planting) { create :planting, owner: member, photos: [photo1, photo2] } let(:harvest) { create :harvest, owner: member, photos: [photo3, photo4] } @@ -22,12 +23,9 @@ feature "crop detail page", js: true do end before { visit crop_path(crop) } + subject { page } - context "when signed in member" do - let(:member) { create :member } - background { login_as(member) } - subject { page } - + shared_examples "shows photos" do describe "show planting photos" do it { is_expected.to have_xpath("//img[contains(@src,'#{photo1.thumbnail_url}')]") } it { is_expected.to have_xpath("//img[contains(@src,'#{photo2.thumbnail_url}')]") } @@ -40,4 +38,16 @@ feature "crop detail page", js: true do it { is_expected.to have_link "more photos" } end end + + context "when signed in" do + background { login_as(create(:member)) } + include_examples "shows photos" + end + context "when signed in as photos owner" do + background { login_as(member) } + include_examples "shows photos" + end + context "when not signed in " do + include_examples "shows photos" + end end