diff options
Diffstat (limited to 'spec/features/users/terms_spec.rb')
-rw-r--r-- | spec/features/users/terms_spec.rb | 78 |
1 files changed, 39 insertions, 39 deletions
diff --git a/spec/features/users/terms_spec.rb b/spec/features/users/terms_spec.rb index 84df1016594..1601fb9b5ba 100644 --- a/spec/features/users/terms_spec.rb +++ b/spec/features/users/terms_spec.rb @@ -1,132 +1,132 @@ -require 'spec_helper' +require "spec_helper" -describe 'Users > Terms' do +describe "Users > Terms" do include TermsHelper - let!(:term) { create(:term, terms: 'By accepting, you promise to be nice!') } + let!(:term) { create(:term, terms: "By accepting, you promise to be nice!") } before do - stub_env('IN_MEMORY_APPLICATION_SETTINGS', 'false') + stub_env("IN_MEMORY_APPLICATION_SETTINGS", "false") end - it 'shows the terms' do + it "shows the terms" do visit terms_path - expect(page).to have_content('By accepting, you promise to be nice!') + expect(page).to have_content("By accepting, you promise to be nice!") end - it 'does not show buttons to accept, decline or sign out', :aggregate_failures do + it "does not show buttons to accept, decline or sign out", :aggregate_failures do visit terms_path - expect(page).not_to have_css('.footer-block') - expect(page).not_to have_content('Accept terms') - expect(page).not_to have_content('Decline and sign out') - expect(page).not_to have_content('Continue') + expect(page).not_to have_css(".footer-block") + expect(page).not_to have_content("Accept terms") + expect(page).not_to have_content("Decline and sign out") + expect(page).not_to have_content("Continue") end - context 'when signed in' do + context "when signed in" do let(:user) { create(:user) } before do sign_in(user) end - context 'declining the terms' do - it 'returns the user to the app' do + context "declining the terms" do + it "returns the user to the app" do visit terms_path - click_button 'Decline and sign out' + click_button "Decline and sign out" expect(page).not_to have_content(term.terms) expect(user.reload.terms_accepted?).to be(false) end end - context 'accepting the terms' do - it 'returns the user to the app' do + context "accepting the terms" do + it "returns the user to the app" do visit terms_path - click_button 'Accept terms' + click_button "Accept terms" expect(page).not_to have_content(term.terms) expect(user.reload.terms_accepted?).to be(true) end end - context 'when the user has already accepted the terms' do + context "when the user has already accepted the terms" do before do accept_terms(user) end - it 'allows the user to continue to the app' do + it "allows the user to continue to the app" do visit terms_path expect(page).to have_content "You have already accepted the Terms of Service as #{user.to_reference}" - click_link 'Continue' + click_link "Continue" expect(current_path).to eq(root_path) end end - context 'terms were enforced while session is active', :js do + context "terms were enforced while session is active", :js do let(:project) { create(:project) } before do project.add_developer(user) end - it 'redirects to terms and back to where the user was going' do + it "redirects to terms and back to where the user was going" do visit project_path(project) enforce_terms - within('.nav-sidebar') do - click_link 'Issues' + within(".nav-sidebar") do + click_link "Issues" end expect_to_be_on_terms_page - click_button('Accept terms') + click_button("Accept terms") expect(current_path).to eq(project_issues_path(project)) end # Disabled until https://gitlab.com/gitlab-org/gitlab-ce/issues/37162 is solved properly - xit 'redirects back to the page the user was trying to save' do + xit "redirects back to the page the user was trying to save" do visit new_project_issue_path(project) - fill_in :issue_title, with: 'Hello world, a new issue' + fill_in :issue_title, with: "Hello world, a new issue" fill_in :issue_description, with: "We don't want to lose what the user typed" enforce_terms - click_button 'Submit issue' + click_button "Submit issue" expect(current_path).to eq(terms_path) - click_button('Accept terms') + click_button("Accept terms") expect(current_path).to eq(new_project_issue_path(project)) - expect(find_field('issue_title').value).to eq('Hello world, a new issue') - expect(find_field('issue_description').value).to eq("We don't want to lose what the user typed") + expect(find_field("issue_title").value).to eq("Hello world, a new issue") + expect(find_field("issue_description").value).to eq("We don't want to lose what the user typed") end end - context 'when the terms are enforced' do + context "when the terms are enforced" do before do enforce_terms end - context 'signing out', :js do - it 'allows the user to sign out without a response' do + context "signing out", :js do + it "allows the user to sign out without a response" do visit terms_path - find('.header-user-dropdown-toggle').click - click_link('Sign out') + find(".header-user-dropdown-toggle").click + click_link("Sign out") - expect(page).to have_content('Sign in') - expect(page).to have_content('Register') + expect(page).to have_content("Sign in") + expect(page).to have_content("Register") end end end |