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

gitlab.com/gitlab-org/gitlab-foss.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Kozono <mkozono@gmail.com>2017-07-31 21:41:46 +0300
committerMichael Kozono <mkozono@gmail.com>2017-08-15 19:05:31 +0300
commit94f365cbf86532907e0b096e4e812894e45a53a6 (patch)
tree091e9d64b11c89c0a958fb47f7f9b43b2a51a097
parent4b52a17e38cedddd830c5b6d9363e5f7f2d848e1 (diff)
Create GroupAccessRequest on request
-rw-r--r--app/models/group.rb2
-rw-r--r--app/models/group_access_request.rb4
-rw-r--r--spec/controllers/groups/group_members_controller_spec.rb2
-rw-r--r--spec/models/concerns/access_requestable_spec.rb2
4 files changed, 7 insertions, 3 deletions
diff --git a/app/models/group.rb b/app/models/group.rb
index 27f8f5ed916..ab5d8376b83 100644
--- a/app/models/group.rb
+++ b/app/models/group.rb
@@ -15,7 +15,7 @@ class Group < Namespace
through: :group_members,
source: :user
- has_many :access_requests, -> { where.not(requested_at: nil) }, dependent: :destroy, as: :source, class_name: 'GroupMember' # rubocop:disable Cop/ActiveRecordDependent
+ has_many :access_requests, dependent: :destroy, class_name: 'GroupAccessRequest' # rubocop:disable Cop/ActiveRecordDependent
has_many :milestones
has_many :project_group_links, dependent: :destroy # rubocop:disable Cop/ActiveRecordDependent
diff --git a/app/models/group_access_request.rb b/app/models/group_access_request.rb
new file mode 100644
index 00000000000..f750b01982a
--- /dev/null
+++ b/app/models/group_access_request.rb
@@ -0,0 +1,4 @@
+class GroupAccessRequest < ActiveRecord::Base
+ belongs_to :group
+ belongs_to :user
+end
diff --git a/spec/controllers/groups/group_members_controller_spec.rb b/spec/controllers/groups/group_members_controller_spec.rb
index afb7684e567..e88c7c2e4bb 100644
--- a/spec/controllers/groups/group_members_controller_spec.rb
+++ b/spec/controllers/groups/group_members_controller_spec.rb
@@ -183,7 +183,7 @@ describe Groups::GroupMembersController do
sign_in(user)
end
- it 'creates a new GroupMember that is not a team member' do
+ it 'creates a new GroupAccessRequest that is not a team member' do
post :request_access, group_id: group
expect(response).to set_flash.to 'Your request for access has been queued for review.'
diff --git a/spec/models/concerns/access_requestable_spec.rb b/spec/models/concerns/access_requestable_spec.rb
index 1d417cf5011..295d4dd1da5 100644
--- a/spec/models/concerns/access_requestable_spec.rb
+++ b/spec/models/concerns/access_requestable_spec.rb
@@ -6,7 +6,7 @@ describe AccessRequestable do
let(:group) { create(:group, :public, :access_requestable) }
let(:user) { create(:user) }
- it { expect(group.request_access(user)).to be_a(GroupMember) }
+ it { expect(group.request_access(user)).to be_a(GroupAccessRequest) }
it { expect(group.request_access(user).user).to eq(user) }
end