1
0
mirror of https://github.com/danbee/danbarberphoto synced 2025-03-04 08:49:07 +00:00
danbarberphoto/spec/features/visitor_navigates_site_spec.rb

67 lines
1.6 KiB
Ruby

require "spec_helper"
feature "visitor navigates site" do
it "shows the featured image on the home page" do
category = create(:category)
photo = create(:photo, featured: true, categories: [category])
visit root_path
expect(page).to have_selector("a[data-id='#{photo.id}']")
end
it "increments the view counter when an image is displayed", js: true do
category = create(:category)
photo = create(:photo, featured: true, categories: [category])
visit root_path
selector = "a[data-id='#{photo.id}']"
page.find(selector).click
expect(page).to have_selector("img.fancybox-image")
wait_for_ajax
photo.reload
expect(photo.views).to eq(1)
end
it "shows the categories" do
categories = create_list(:category, 5)
visit root_path
click_link "portfolio"
expect(page).to have_link(categories.first.name.downcase)
click_link ""
expect(page).to have_link(categories.last.name.downcase)
end
it "shows the photos for the category" do
category = create(:category)
photo = create(:photo, featured: true, categories: [category])
visit categories_path
click_link category.name.downcase
selector = "a[data-id='#{photo.id}']"
expect(page).to have_selector(selector)
end
it "shows the second page of photos" do
category = create(:category)
photos = create_list(:photo, 12, featured: true, categories: [category])
visit url_for([category, :photos])
click_link ""
selector = "a[data-id='#{photos.last.id}']"
expect(page).to have_selector(selector)
end
end