Files
openfoodnetwork/spec/features/admin/configuration/zones_spec.rb
2020-06-16 15:13:54 +01:00

58 lines
1.5 KiB
Ruby

require 'spec_helper'
describe "Zones" do
include AuthenticationWorkflow
before do
quick_login_as_admin
Spree::Zone.delete_all
end
scenario "list existing zones" do
visit spree.admin_dashboard_path
click_link "Configuration"
create(:zone, name: "eastern", description: "zone is eastern")
create(:zone, name: "western", description: "cool san fran")
click_link "Zones"
within_row(1) { expect(page).to have_content("eastern") }
within_row(2) { expect(page).to have_content("western") }
click_link "zones_order_by_description_title"
within_row(1) { expect(page).to have_content("western") }
within_row(2) { expect(page).to have_content("eastern") }
end
scenario "create a new zone" do
visit spree.admin_zones_path
click_link "admin_new_zone_link"
expect(page).to have_content("New Zone")
fill_in "zone_name", with: "japan"
fill_in "zone_description", with: "japanese time zone"
click_button "Create"
expect(page).to have_content("successfully created!")
end
scenario "edit existing zone", js: true do
zone = create(:zone_with_member)
visit spree.edit_admin_zone_path(zone.id)
expect(page).to have_checked_field "country_based"
# Toggle to state based zone
choose "State Based"
# click Add State
page.find("#nested-state").click
# select first state available
find('.select2').find(:xpath, 'option[2]').select_option
click_button "Update"
expect(page).to have_content("successfully updated!")
end
end