Welcome to mirror list, hosted at ThFree Co, Russian Federation.

registration_spec.rb « registrations « features « spec - gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
blob: b408ef268f260635df09fed130708052991cd711 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
# frozen_string_literal: true

require 'spec_helper'

RSpec.describe 'Registrations', feature_category: :system_access do
  let_it_be(:user) { create(:user) }

  context 'when the user visits the registration page when already signed in', :clean_gitlab_redis_sessions do
    before do
      sign_in(user)
    end

    it 'does not show an "You are already signed in" error message' do
      visit new_user_registration_path

      wait_for_requests

      expect(page).not_to have_content(I18n.t('devise.failure.already_authenticated'))
    end
  end

  context 'when the user registers having an invitation', :js do
    let(:group) { create(:group, :private) }
    let(:new_user) { build(:user) }

    before do
      stub_application_setting_enum('email_confirmation_setting', 'soft')
      stub_application_setting(require_admin_approval_after_user_signup: false)
    end

    it 'becomes a member after confirmation' do
      create(:group_member, :invited, :developer, source: group, invite_email: new_user.email)

      visit new_user_registration_path
      fill_in_sign_up_form(new_user)

      confirm_email(new_user)
      visit polymorphic_path(group)

      expect(page).to have_content(group.name)
      expect(page).not_to have_content('Page Not Found')
    end
  end
end