diff options
author | Michael Kozono <mkozono@gmail.com> | 2017-07-31 21:41:46 +0300 |
---|---|---|
committer | Michael Kozono <mkozono@gmail.com> | 2017-08-15 19:05:31 +0300 |
commit | 94f365cbf86532907e0b096e4e812894e45a53a6 (patch) | |
tree | 091e9d64b11c89c0a958fb47f7f9b43b2a51a097 | |
parent | 4b52a17e38cedddd830c5b6d9363e5f7f2d848e1 (diff) |
Create GroupAccessRequest on request
-rw-r--r-- | app/models/group.rb | 2 | ||||
-rw-r--r-- | app/models/group_access_request.rb | 4 | ||||
-rw-r--r-- | spec/controllers/groups/group_members_controller_spec.rb | 2 | ||||
-rw-r--r-- | spec/models/concerns/access_requestable_spec.rb | 2 |
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 |