From e94cbcef02073401443c5168aac4c0075350a626 Mon Sep 17 00:00:00 2001 From: Cjay Billones Date: Mon, 6 Jul 2015 10:56:31 +0800 Subject: [PATCH] Refactor spec Refactor spec by changing before(:each) into let --- spec/features/admin/account_types_spec.rb | 11 ++++------ spec/features/admin/forums_spec.rb | 11 ++++------ spec/features/admin/products.rb | 3 ++- spec/features/cms_spec.rb | 22 +++++-------------- spec/features/crops/alternate_name_spec.rb | 4 ++-- spec/features/crops/request_new_crop_spec.rb | 8 +++++-- .../harvests/harvesting_a_crop_spec.rb | 2 +- spec/features/photos/show_photo_spec.rb | 2 +- .../plantings/planting_a_crop_spec.rb | 2 +- spec/features/scientific_name_spec.rb | 2 +- spec/features/seeds/adding_seeds_spec.rb | 2 +- spec/features/seeds/misc_seeds_spec.rb | 14 +++++------- 12 files changed, 35 insertions(+), 48 deletions(-) diff --git a/spec/features/admin/account_types_spec.rb b/spec/features/admin/account_types_spec.rb index b561443448..01c0040d5c 100644 --- a/spec/features/admin/account_types_spec.rb +++ b/spec/features/admin/account_types_spec.rb @@ -2,13 +2,10 @@ feature "account types" do context "admin user" do - before(:each) do - @member = FactoryGirl.create(:admin_member) - visit root_path - click_link 'Sign in' - fill_in 'Login', :with => @member.login_name - fill_in 'Password', :with => @member.password - click_button 'Sign in' + let(:member) { FactoryGirl.create(:admin_member) } + + background do + login_as member end scenario "navigating to account type admin" do diff --git a/spec/features/admin/forums_spec.rb b/spec/features/admin/forums_spec.rb index e9f8a43f93..98c30d6c70 100644 --- a/spec/features/admin/forums_spec.rb +++ b/spec/features/admin/forums_spec.rb @@ -2,13 +2,10 @@ feature "forums" do context "admin user" do - before(:each) do - @member = FactoryGirl.create(:admin_member) - visit root_path - click_link 'Sign in' - fill_in 'Login', :with => @member.login_name - fill_in 'Password', :with => @member.password - click_button 'Sign in' + let(:member) { FactoryGirl.create(:admin_member) } + + background do + login_as member end scenario "navigating to forum admin" do diff --git a/spec/features/admin/products.rb b/spec/features/admin/products.rb index 2e85ead600..e24632cd07 100644 --- a/spec/features/admin/products.rb +++ b/spec/features/admin/products.rb @@ -3,8 +3,9 @@ feature "products" do context "admin user" do let(:member) { FactoryGirl.create(:admin_member) } + background do - login_as(member) + login_as member end scenario "navigating to product admin" do diff --git a/spec/features/cms_spec.rb b/spec/features/cms_spec.rb index fb3f2ca93a..3e10faa6b7 100644 --- a/spec/features/cms_spec.rb +++ b/spec/features/cms_spec.rb @@ -1,10 +1,9 @@ -require 'spec_helper' +require 'rails_helper' feature "cms admin" do - before(:each) do - @member = FactoryGirl.create(:member) - @admin_member = FactoryGirl.create(:admin_member) - end + + let(:member) { FactoryGirl.create(:member) } + let(:admin_member) { FactoryGirl.create(:admin_member) } scenario "can't view CMS admin if not signed in" do visit comfy_admin_cms_path @@ -14,23 +13,14 @@ scenario "can't view CMS admin if not an admin member" do # sign in as an ordinary member - visit root_path - click_link 'navbar-signin' - fill_in 'Login', :with => @member.email - fill_in 'Password', :with => @member.password - click_button 'Sign in' + login_as member visit comfy_admin_cms_path current_path.should == root_path page.should have_content("Please sign in as an admin user") end scenario "admin members can view CMS admin area" do - visit root_path - # now we sign in as an admin member - click_link 'navbar-signin' - fill_in 'Login', :with => @admin_member.email - fill_in 'Password', :with => @admin_member.password - click_button 'Sign in' + login_as admin_member visit comfy_admin_cms_path current_path.should match /#{comfy_admin_cms_path}/ # match any CMS admin page end diff --git a/spec/features/crops/alternate_name_spec.rb b/spec/features/crops/alternate_name_spec.rb index 348cc32797..44bd40c380 100644 --- a/spec/features/crops/alternate_name_spec.rb +++ b/spec/features/crops/alternate_name_spec.rb @@ -19,8 +19,8 @@ let!(:crop_wranglers) { FactoryGirl.create_list(:crop_wrangling_member, 3) } let(:member){crop_wranglers.first} - before :each do - login_as(member) + background do + login_as member end scenario "Crop wranglers can edit alternate names" do diff --git a/spec/features/crops/request_new_crop_spec.rb b/spec/features/crops/request_new_crop_spec.rb index afe03a0a18..de91cca7e1 100644 --- a/spec/features/crops/request_new_crop_spec.rb +++ b/spec/features/crops/request_new_crop_spec.rb @@ -7,7 +7,9 @@ let(:member) { FactoryGirl.create(:member) } let!(:wrangler) { FactoryGirl.create(:crop_wrangling_member) } - before { login_as member } + background do + login_as member + end scenario "Submit request" do visit new_crop_path @@ -25,7 +27,9 @@ let!(:crop) { FactoryGirl.create(:crop_request) } let!(:already_approved) { FactoryGirl.create(:crop) } - before { login_as wrangler } + background do + login_as wrangler + end scenario "Approve a request" do visit edit_crop_path(crop) diff --git a/spec/features/harvests/harvesting_a_crop_spec.rb b/spec/features/harvests/harvesting_a_crop_spec.rb index c1148cf4bb..8f4cc6e1b1 100644 --- a/spec/features/harvests/harvesting_a_crop_spec.rb +++ b/spec/features/harvests/harvesting_a_crop_spec.rb @@ -5,7 +5,7 @@ let!(:maize) { FactoryGirl.create(:maize) } background do - login_as(member) + login_as member visit new_harvest_path sync_elasticsearch([maize]) end diff --git a/spec/features/photos/show_photo_spec.rb b/spec/features/photos/show_photo_spec.rb index aa02af9886..0bef515870 100644 --- a/spec/features/photos/show_photo_spec.rb +++ b/spec/features/photos/show_photo_spec.rb @@ -8,7 +8,7 @@ let (:member) { FactoryGirl.create(:member) } background do - login_as(member) + login_as member end context "linked to planting" do diff --git a/spec/features/plantings/planting_a_crop_spec.rb b/spec/features/plantings/planting_a_crop_spec.rb index 7001ad400a..1becf895d2 100644 --- a/spec/features/plantings/planting_a_crop_spec.rb +++ b/spec/features/plantings/planting_a_crop_spec.rb @@ -7,7 +7,7 @@ let!(:planting) { FactoryGirl.create(:planting, garden: garden, planted_at: Date.parse("2013-3-10")) } background do - login_as(member) + login_as member visit new_planting_path sync_elasticsearch([maize]) end diff --git a/spec/features/scientific_name_spec.rb b/spec/features/scientific_name_spec.rb index f8b93ce298..af5cc7f2ff 100644 --- a/spec/features/scientific_name_spec.rb +++ b/spec/features/scientific_name_spec.rb @@ -20,7 +20,7 @@ let!(:crop_wranglers) { FactoryGirl.create_list(:crop_wrangling_member, 3) } let(:member){crop_wranglers.first} - before :each do + background do login_as(member) end diff --git a/spec/features/seeds/adding_seeds_spec.rb b/spec/features/seeds/adding_seeds_spec.rb index b14622d47c..8fa146724e 100644 --- a/spec/features/seeds/adding_seeds_spec.rb +++ b/spec/features/seeds/adding_seeds_spec.rb @@ -5,7 +5,7 @@ let!(:maize) { FactoryGirl.create(:maize) } background do - login_as(member) + login_as member visit new_seed_path sync_elasticsearch([maize]) end diff --git a/spec/features/seeds/misc_seeds_spec.rb b/spec/features/seeds/misc_seeds_spec.rb index 1e434a754d..7fc4e32d6c 100644 --- a/spec/features/seeds/misc_seeds_spec.rb +++ b/spec/features/seeds/misc_seeds_spec.rb @@ -2,14 +2,12 @@ feature "seeds" do context "signed in user" do - before(:each) do - @crop = FactoryGirl.create(:crop) - @member = FactoryGirl.create(:member) - visit root_path - click_link 'Sign in' - fill_in 'Login', :with => @member.login_name - fill_in 'Password', :with => @member.password - click_button 'Sign in' + + let(:member) { @member = FactoryGirl.create(:member) } + let(:crop) { FactoryGirl.create(:crop) } + + background do + login_as member end scenario "button on index to edit seed" do