demarches-normaliennes/spec/features/admin/connection_spec.rb

63 lines
1.9 KiB
Ruby
Raw Normal View History

2015-12-14 17:27:14 +01:00
require 'spec_helper'
feature 'Administrator connection' do
let(:admin) { create(:administrateur) }
before do
visit new_administrateur_session_path
end
2017-06-13 17:46:08 +02:00
scenario 'administrator is on sign in page' do
expect(page).to have_css('#new_user')
2015-12-14 17:27:14 +01:00
end
context "admin fills form and log in" do
before do
2017-01-03 11:32:21 +01:00
page.find_by_id('user_email').set admin.email
page.find_by_id('user_password').set admin.password
2015-12-14 17:27:14 +01:00
page.click_on 'Se connecter'
end
scenario 'a menu button is available' do
expect(page).to have_css('#admin_menu')
end
context 'when he click on the menu' do
before do
page.find_by_id('admin_menu').click
end
scenario 'it displays the menu' do
expect(page).to have_css('a#profile')
expect(page).to have_css('#sign-out')
expect(page).to have_css('a.fa-sign-out')
2015-12-14 17:27:14 +01:00
end
context 'when clicking on sign-out' do
2015-12-14 17:27:14 +01:00
before do
2017-06-12 15:16:15 +02:00
stub_request(:get, "https://api.github.com/repos/sgmap/tps/releases/latest")
.to_return(:status => 200, :body => '{"tag_name": "plip", "body": "blabla", "published_at": "2016-02-09T16:46:47Z"}', :headers => {})
page.find_by_id('sign-out').find('a.fa-sign-out').click
2015-12-14 17:27:14 +01:00
end
scenario 'admin is redireted to home page' do
expect(page).to have_css('.landing')
2015-12-14 17:27:14 +01:00
end
end
context 'when clicking on profile' do
before do
page.find_by_id('profile').click
end
scenario 'it redirects to profile page' do
expect(page).to have_css('#profile_page')
end
context 'when clicking on procedure' do
before do
page.find_by_id('admin_menu').click
page.find_by_id('menu_item_procedure').click
end
scenario 'it redirects to procedure page' do
expect(page).to have_content('Procédures')
2015-12-14 17:27:14 +01:00
end
end
end
end
end
end