From c69b8e04591907d030b2cd544a606fd0e576116a Mon Sep 17 00:00:00 2001 From: Dmitriy Zaporozhets Date: Sun, 14 Sep 2014 19:32:51 +0300 Subject: Huge replace of old users_project and users_group references Signed-off-by: Dmitriy Zaporozhets --- spec/factories.rb | 2 +- spec/factories/users_groups.rb | 2 +- spec/helpers/gitlab_markdown_helper_spec.rb | 2 +- spec/models/group_member_spec.rb | 44 +++++++++++ spec/models/group_spec.rb | 16 ++-- spec/models/members_spec.rb | 5 ++ spec/models/note_spec.rb | 14 ++-- spec/models/project_member_spec.rb | 90 ++++++++++++++++++++++ spec/models/project_security_spec.rb | 16 ++-- spec/models/system_hook_spec.rb | 2 +- spec/models/user_spec.rb | 2 +- spec/models/users_group_spec.rb | 67 ----------------- spec/models/users_project_spec.rb | 113 ---------------------------- spec/requests/api/branches_spec.rb | 4 +- spec/requests/api/commits_spec.rb | 4 +- spec/requests/api/groups_spec.rb | 36 ++++----- spec/requests/api/project_members_spec.rb | 34 ++++----- spec/requests/api/projects_spec.rb | 4 +- spec/requests/api/repositories_spec.rb | 4 +- spec/services/notification_service_spec.rb | 6 +- 20 files changed, 213 insertions(+), 254 deletions(-) create mode 100644 spec/models/group_member_spec.rb create mode 100644 spec/models/project_member_spec.rb delete mode 100644 spec/models/users_group_spec.rb delete mode 100644 spec/models/users_project_spec.rb (limited to 'spec') diff --git a/spec/factories.rb b/spec/factories.rb index f7f65bffb8b..0bf56fe84d6 100644 --- a/spec/factories.rb +++ b/spec/factories.rb @@ -42,7 +42,7 @@ FactoryGirl.define do factory :users_project do user project - project_access { UsersProject::MASTER } + project_access { ProjectMember::MASTER } end factory :issue do diff --git a/spec/factories/users_groups.rb b/spec/factories/users_groups.rb index 49c3a367e16..931f6a25575 100644 --- a/spec/factories/users_groups.rb +++ b/spec/factories/users_groups.rb @@ -13,7 +13,7 @@ FactoryGirl.define do factory :users_group do - group_access { UsersGroup::OWNER } + group_access { GroupMember::OWNER } group user end diff --git a/spec/helpers/gitlab_markdown_helper_spec.rb b/spec/helpers/gitlab_markdown_helper_spec.rb index ba6af6f8b45..46337f8bafd 100644 --- a/spec/helpers/gitlab_markdown_helper_spec.rb +++ b/spec/helpers/gitlab_markdown_helper_spec.rb @@ -12,7 +12,7 @@ describe GitlabMarkdownHelper do let(:issue) { create(:issue, project: project) } let(:merge_request) { create(:merge_request, source_project: project, target_project: project) } let(:snippet) { create(:project_snippet, project: project) } - let(:member) { project.users_projects.where(user_id: user).first } + let(:member) { project.project_members.where(user_id: user).first } before do # Helper expects a @project instance variable diff --git a/spec/models/group_member_spec.rb b/spec/models/group_member_spec.rb new file mode 100644 index 00000000000..9eb4859ebd5 --- /dev/null +++ b/spec/models/group_member_spec.rb @@ -0,0 +1,44 @@ +# == Schema Information +# +# Table name: users_groups +# +# id :integer not null, primary key +# group_access :integer not null +# group_id :integer not null +# user_id :integer not null +# created_at :datetime +# updated_at :datetime +# notification_level :integer default(3), not null +# + +require 'spec_helper' + +describe GroupMember do + context 'notification' do + describe "#after_create" do + it "should send email to user" do + membership = build(:users_group) + membership.stub(notification_service: double('NotificationService').as_null_object) + membership.should_receive(:notification_service) + membership.save + end + end + + describe "#after_update" do + before do + @membership = create :users_group + @membership.stub(notification_service: double('NotificationService').as_null_object) + end + + it "should send email to user" do + @membership.should_receive(:notification_service) + @membership.update_attribute(:group_access, GroupMember::MASTER) + end + + it "does not send an email when the access level has not changed" do + @membership.should_not_receive(:notification_service) + @membership.update_attribute(:group_access, GroupMember::OWNER) + end + end + end +end diff --git a/spec/models/group_spec.rb b/spec/models/group_spec.rb index 8259ed88d83..006a8402d00 100644 --- a/spec/models/group_spec.rb +++ b/spec/models/group_spec.rb @@ -39,26 +39,26 @@ describe Group do describe :add_users do let(:user) { create(:user) } - before { group.add_user(user, UsersGroup::MASTER) } + before { group.add_user(user, GroupMember::MASTER) } - it { group.users_groups.masters.map(&:user).should include(user) } + it { group.group_members.masters.map(&:user).should include(user) } end describe :add_users do let(:user) { create(:user) } - before { group.add_users([user.id], UsersGroup::GUEST) } + before { group.add_users([user.id], GroupMember::GUEST) } it "should update the group permission" do - group.users_groups.guests.map(&:user).should include(user) - group.add_users([user.id], UsersGroup::DEVELOPER) - group.users_groups.developers.map(&:user).should include(user) - group.users_groups.guests.map(&:user).should_not include(user) + group.group_members.guests.map(&:user).should include(user) + group.add_users([user.id], GroupMember::DEVELOPER) + group.group_members.developers.map(&:user).should include(user) + group.group_members.guests.map(&:user).should_not include(user) end end describe :avatar_type do let(:user) { create(:user) } - before { group.add_user(user, UsersGroup::MASTER) } + before { group.add_user(user, GroupMember::MASTER) } it "should be true if avatar is image" do group.update_attribute(:avatar, 'uploads/avatar.png') diff --git a/spec/models/members_spec.rb b/spec/models/members_spec.rb index 33e97686654..6866c4794c2 100644 --- a/spec/models/members_spec.rb +++ b/spec/models/members_spec.rb @@ -12,4 +12,9 @@ describe Member do it { should validate_presence_of(:source) } it { should ensure_inclusion_of(:access_level).in_array(Gitlab::Access.values) } end + + describe "Delegate methods" do + it { should respond_to(:user_name) } + it { should respond_to(:user_email) } + end end diff --git a/spec/models/note_spec.rb b/spec/models/note_spec.rb index d06dee6ce92..a6796d4ab15 100644 --- a/spec/models/note_spec.rb +++ b/spec/models/note_spec.rb @@ -321,8 +321,8 @@ describe Note do describe :read do before do - @p1.users_projects.create(user: @u2, project_access: UsersProject::GUEST) - @p2.users_projects.create(user: @u3, project_access: UsersProject::GUEST) + @p1.project_members.create(user: @u2, project_access: ProjectMember::GUEST) + @p2.project_members.create(user: @u3, project_access: ProjectMember::GUEST) end it { @abilities.allowed?(@u1, :read_note, @p1).should be_false } @@ -332,8 +332,8 @@ describe Note do describe :write do before do - @p1.users_projects.create(user: @u2, project_access: UsersProject::DEVELOPER) - @p2.users_projects.create(user: @u3, project_access: UsersProject::DEVELOPER) + @p1.project_members.create(user: @u2, project_access: ProjectMember::DEVELOPER) + @p2.project_members.create(user: @u3, project_access: ProjectMember::DEVELOPER) end it { @abilities.allowed?(@u1, :write_note, @p1).should be_false } @@ -343,9 +343,9 @@ describe Note do describe :admin do before do - @p1.users_projects.create(user: @u1, project_access: UsersProject::REPORTER) - @p1.users_projects.create(user: @u2, project_access: UsersProject::MASTER) - @p2.users_projects.create(user: @u3, project_access: UsersProject::MASTER) + @p1.project_members.create(user: @u1, project_access: ProjectMember::REPORTER) + @p1.project_members.create(user: @u2, project_access: ProjectMember::MASTER) + @p2.project_members.create(user: @u3, project_access: ProjectMember::MASTER) end it { @abilities.allowed?(@u1, :admin_note, @p1).should be_false } diff --git a/spec/models/project_member_spec.rb b/spec/models/project_member_spec.rb new file mode 100644 index 00000000000..76c5437a555 --- /dev/null +++ b/spec/models/project_member_spec.rb @@ -0,0 +1,90 @@ +# == Schema Information +# +# Table name: users_projects +# +# id :integer not null, primary key +# user_id :integer not null +# project_id :integer not null +# created_at :datetime +# updated_at :datetime +# project_access :integer default(0), not null +# notification_level :integer default(3), not null +# + +require 'spec_helper' + +describe ProjectMember do + describe :import_team do + before do + @abilities = Six.new + @abilities << Ability + + @project_1 = create :project + @project_2 = create :project + + @user_1 = create :user + @user_2 = create :user + + @project_1.team << [ @user_1, :developer ] + @project_2.team << [ @user_2, :reporter ] + + @status = @project_2.team.import(@project_1) + end + + it { @status.should be_true } + + describe 'project 2 should get user 1 as developer. user_2 should not be changed' do + it { @project_2.users.should include(@user_1) } + it { @project_2.users.should include(@user_2) } + + it { @abilities.allowed?(@user_1, :write_project, @project_2).should be_true } + it { @abilities.allowed?(@user_2, :read_project, @project_2).should be_true } + end + + describe 'project 1 should not be changed' do + it { @project_1.users.should include(@user_1) } + it { @project_1.users.should_not include(@user_2) } + end + end + + describe :add_users_into_projects do + before do + @project_1 = create :project + @project_2 = create :project + + @user_1 = create :user + @user_2 = create :user + + ProjectMember.add_users_into_projects( + [@project_1.id, @project_2.id], + [@user_1.id, @user_2.id], + ProjectMember::MASTER + ) + end + + it { @project_1.users.should include(@user_1) } + it { @project_1.users.should include(@user_2) } + + + it { @project_2.users.should include(@user_1) } + it { @project_2.users.should include(@user_2) } + end + + describe :truncate_teams do + before do + @project_1 = create :project + @project_2 = create :project + + @user_1 = create :user + @user_2 = create :user + + @project_1.team << [ @user_1, :developer] + @project_2.team << [ @user_2, :reporter] + + ProjectMember.truncate_teams([@project_1.id, @project_2.id]) + end + + it { @project_1.users.should be_empty } + it { @project_2.users.should be_empty } + end +end diff --git a/spec/models/project_security_spec.rb b/spec/models/project_security_spec.rb index 1f2bd7a56ff..564edaf8c1b 100644 --- a/spec/models/project_security_spec.rb +++ b/spec/models/project_security_spec.rb @@ -30,7 +30,7 @@ describe Project do describe "Guest Rules" do before do - @p1.users_projects.create(project: @p1, user: @u2, project_access: UsersProject::GUEST) + @p1.project_members.create(project: @p1, user: @u2, project_access: ProjectMember::GUEST) end it "should allow for project user any guest actions" do @@ -42,7 +42,7 @@ describe Project do describe "Report Rules" do before do - @p1.users_projects.create(project: @p1, user: @u2, project_access: UsersProject::REPORTER) + @p1.project_members.create(project: @p1, user: @u2, project_access: ProjectMember::REPORTER) end it "should allow for project user any report actions" do @@ -54,8 +54,8 @@ describe Project do describe "Developer Rules" do before do - @p1.users_projects.create(project: @p1, user: @u2, project_access: UsersProject::REPORTER) - @p1.users_projects.create(project: @p1, user: @u3, project_access: UsersProject::DEVELOPER) + @p1.project_members.create(project: @p1, user: @u2, project_access: ProjectMember::REPORTER) + @p1.project_members.create(project: @p1, user: @u3, project_access: ProjectMember::DEVELOPER) end it "should deny for developer master-specific actions" do @@ -73,8 +73,8 @@ describe Project do describe "Master Rules" do before do - @p1.users_projects.create(project: @p1, user: @u2, project_access: UsersProject::DEVELOPER) - @p1.users_projects.create(project: @p1, user: @u3, project_access: UsersProject::MASTER) + @p1.project_members.create(project: @p1, user: @u2, project_access: ProjectMember::DEVELOPER) + @p1.project_members.create(project: @p1, user: @u3, project_access: ProjectMember::MASTER) end it "should deny for developer master-specific actions" do @@ -92,8 +92,8 @@ describe Project do describe "Admin Rules" do before do - @p1.users_projects.create(project: @p1, user: @u2, project_access: UsersProject::DEVELOPER) - @p1.users_projects.create(project: @p1, user: @u3, project_access: UsersProject::MASTER) + @p1.project_members.create(project: @p1, user: @u2, project_access: ProjectMember::DEVELOPER) + @p1.project_members.create(project: @p1, user: @u3, project_access: ProjectMember::MASTER) end it "should deny for masters admin-specific actions" do diff --git a/spec/models/system_hook_spec.rb b/spec/models/system_hook_spec.rb index 2b98acdeb6c..4ab5261dc9d 100644 --- a/spec/models/system_hook_spec.rb +++ b/spec/models/system_hook_spec.rb @@ -58,7 +58,7 @@ describe SystemHook do user = create(:user) project = create(:project) project.team << [user, :master] - project.users_projects.destroy_all + project.project_members.destroy_all WebMock.should have_requested(:post, @system_hook.url).with(body: /user_remove_from_team/).once end end diff --git a/spec/models/user_spec.rb b/spec/models/user_spec.rb index 7221328a45f..f5c42f7cb2d 100644 --- a/spec/models/user_spec.rb +++ b/spec/models/user_spec.rb @@ -182,7 +182,7 @@ describe User do @group = create :group @group.add_owner(@user) - @group.add_user(@user2, UsersGroup::OWNER) + @group.add_user(@user2, GroupMember::OWNER) end it { @user2.several_namespaces?.should be_true } diff --git a/spec/models/users_group_spec.rb b/spec/models/users_group_spec.rb deleted file mode 100644 index 0b6f7a08198..00000000000 --- a/spec/models/users_group_spec.rb +++ /dev/null @@ -1,67 +0,0 @@ -# == Schema Information -# -# Table name: users_groups -# -# id :integer not null, primary key -# group_access :integer not null -# group_id :integer not null -# user_id :integer not null -# created_at :datetime -# updated_at :datetime -# notification_level :integer default(3), not null -# - -require 'spec_helper' - -describe UsersGroup do - describe "Associations" do - it { should belong_to(:group) } - it { should belong_to(:user) } - end - - describe "Mass assignment" do - end - - describe "Validation" do - let!(:users_group) { create(:users_group) } - - it { should validate_presence_of(:user_id) } - it { should validate_uniqueness_of(:user_id).scoped_to(:group_id).with_message(/already exists/) } - - it { should validate_presence_of(:group_id) } - it { should ensure_inclusion_of(:group_access).in_array(UsersGroup.group_access_roles.values) } - end - - describe "Delegate methods" do - it { should respond_to(:user_name) } - it { should respond_to(:user_email) } - end - - context 'notification' do - describe "#after_create" do - it "should send email to user" do - membership = build(:users_group) - membership.stub(notification_service: double('NotificationService').as_null_object) - membership.should_receive(:notification_service) - membership.save - end - end - - describe "#after_update" do - before do - @membership = create :users_group - @membership.stub(notification_service: double('NotificationService').as_null_object) - end - - it "should send email to user" do - @membership.should_receive(:notification_service) - @membership.update_attribute(:group_access, UsersGroup::MASTER) - end - - it "does not send an email when the access level has not changed" do - @membership.should_not_receive(:notification_service) - @membership.update_attribute(:group_access, UsersGroup::OWNER) - end - end - end -end diff --git a/spec/models/users_project_spec.rb b/spec/models/users_project_spec.rb deleted file mode 100644 index 3f38164e964..00000000000 --- a/spec/models/users_project_spec.rb +++ /dev/null @@ -1,113 +0,0 @@ -# == Schema Information -# -# Table name: users_projects -# -# id :integer not null, primary key -# user_id :integer not null -# project_id :integer not null -# created_at :datetime -# updated_at :datetime -# project_access :integer default(0), not null -# notification_level :integer default(3), not null -# - -require 'spec_helper' - -describe UsersProject do - describe "Associations" do - it { should belong_to(:project) } - it { should belong_to(:user) } - end - - describe "Mass assignment" do - end - - describe "Validation" do - let!(:users_project) { create(:users_project) } - - it { should validate_presence_of(:user) } - it { should validate_uniqueness_of(:user_id).scoped_to(:project_id).with_message(/already exists/) } - - it { should validate_presence_of(:project) } - it { should ensure_inclusion_of(:project_access).in_array(UsersProject.access_roles.values) } - end - - describe "Delegate methods" do - it { should respond_to(:user_name) } - it { should respond_to(:user_email) } - end - - describe :import_team do - before do - @abilities = Six.new - @abilities << Ability - - @project_1 = create :project - @project_2 = create :project - - @user_1 = create :user - @user_2 = create :user - - @project_1.team << [ @user_1, :developer ] - @project_2.team << [ @user_2, :reporter ] - - @status = @project_2.team.import(@project_1) - end - - it { @status.should be_true } - - describe 'project 2 should get user 1 as developer. user_2 should not be changed' do - it { @project_2.users.should include(@user_1) } - it { @project_2.users.should include(@user_2) } - - it { @abilities.allowed?(@user_1, :write_project, @project_2).should be_true } - it { @abilities.allowed?(@user_2, :read_project, @project_2).should be_true } - end - - describe 'project 1 should not be changed' do - it { @project_1.users.should include(@user_1) } - it { @project_1.users.should_not include(@user_2) } - end - end - - describe :add_users_into_projects do - before do - @project_1 = create :project - @project_2 = create :project - - @user_1 = create :user - @user_2 = create :user - - UsersProject.add_users_into_projects( - [@project_1.id, @project_2.id], - [@user_1.id, @user_2.id], - UsersProject::MASTER - ) - end - - it { @project_1.users.should include(@user_1) } - it { @project_1.users.should include(@user_2) } - - - it { @project_2.users.should include(@user_1) } - it { @project_2.users.should include(@user_2) } - end - - describe :truncate_teams do - before do - @project_1 = create :project - @project_2 = create :project - - @user_1 = create :user - @user_2 = create :user - - @project_1.team << [ @user_1, :developer] - @project_2.team << [ @user_2, :reporter] - - UsersProject.truncate_teams([@project_1.id, @project_2.id]) - end - - it { @project_1.users.should be_empty } - it { @project_2.users.should be_empty } - end -end diff --git a/spec/requests/api/branches_spec.rb b/spec/requests/api/branches_spec.rb index e7f91c5e46e..1690146aea7 100644 --- a/spec/requests/api/branches_spec.rb +++ b/spec/requests/api/branches_spec.rb @@ -7,8 +7,8 @@ describe API::API, api: true do let(:user) { create(:user) } let(:user2) { create(:user) } let!(:project) { create(:project, creator_id: user.id) } - let!(:master) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) } - let!(:guest) { create(:users_project, user: user2, project: project, project_access: UsersProject::GUEST) } + let!(:master) { create(:users_project, user: user, project: project, project_access: ProjectMember::MASTER) } + let!(:guest) { create(:users_project, user: user2, project: project, project_access: ProjectMember::GUEST) } let!(:branch_name) { 'feature' } let!(:branch_sha) { '0b4bc9a49b562e85de7cc9e834518ea6828729b9' } diff --git a/spec/requests/api/commits_spec.rb b/spec/requests/api/commits_spec.rb index b56269d275d..21c0329e60f 100644 --- a/spec/requests/api/commits_spec.rb +++ b/spec/requests/api/commits_spec.rb @@ -6,8 +6,8 @@ describe API::API, api: true do let(:user) { create(:user) } let(:user2) { create(:user) } let!(:project) { create(:project, creator_id: user.id) } - let!(:master) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) } - let!(:guest) { create(:users_project, user: user2, project: project, project_access: UsersProject::GUEST) } + let!(:master) { create(:users_project, user: user, project: project, project_access: ProjectMember::MASTER) } + let!(:guest) { create(:users_project, user: user2, project: project, project_access: ProjectMember::GUEST) } before { project.team << [user, :reporter] } diff --git a/spec/requests/api/groups_spec.rb b/spec/requests/api/groups_spec.rb index f27a60e4bc0..42ccad71aaf 100644 --- a/spec/requests/api/groups_spec.rb +++ b/spec/requests/api/groups_spec.rb @@ -174,10 +174,10 @@ describe API::API, api: true do let(:guest) { create(:user) } let!(:group_with_members) do group = create(:group) - group.add_users([reporter.id], UsersGroup::REPORTER) - group.add_users([developer.id], UsersGroup::DEVELOPER) - group.add_users([master.id], UsersGroup::MASTER) - group.add_users([guest.id], UsersGroup::GUEST) + group.add_users([reporter.id], GroupMember::REPORTER) + group.add_users([developer.id], GroupMember::DEVELOPER) + group.add_users([master.id], GroupMember::MASTER) + group.add_users([guest.id], GroupMember::GUEST) group end let!(:group_no_members) { create(:group) } @@ -195,11 +195,11 @@ describe API::API, api: true do response.status.should == 200 json_response.should be_an Array json_response.size.should == 5 - json_response.find { |e| e['id']==owner.id }['access_level'].should == UsersGroup::OWNER - json_response.find { |e| e['id']==reporter.id }['access_level'].should == UsersGroup::REPORTER - json_response.find { |e| e['id']==developer.id }['access_level'].should == UsersGroup::DEVELOPER - json_response.find { |e| e['id']==master.id }['access_level'].should == UsersGroup::MASTER - json_response.find { |e| e['id']==guest.id }['access_level'].should == UsersGroup::GUEST + json_response.find { |e| e['id']==owner.id }['access_level'].should == GroupMember::OWNER + json_response.find { |e| e['id']==reporter.id }['access_level'].should == GroupMember::REPORTER + json_response.find { |e| e['id']==developer.id }['access_level'].should == GroupMember::DEVELOPER + json_response.find { |e| e['id']==master.id }['access_level'].should == GroupMember::MASTER + json_response.find { |e| e['id']==guest.id }['access_level'].should == GroupMember::GUEST end end @@ -213,29 +213,29 @@ describe API::API, api: true do describe "POST /groups/:id/members" do context "when not a member of the group" do it "should not add guest as member of group_no_members when adding being done by person outside the group" do - post api("/groups/#{group_no_members.id}/members", reporter), user_id: guest.id, access_level: UsersGroup::MASTER + post api("/groups/#{group_no_members.id}/members", reporter), user_id: guest.id, access_level: GroupMember::MASTER response.status.should == 403 end end context "when a member of the group" do it "should return ok and add new member" do - count_before=group_no_members.users_groups.count + count_before=group_no_members.group_members.count new_user = create(:user) - post api("/groups/#{group_no_members.id}/members", owner), user_id: new_user.id, access_level: UsersGroup::MASTER + post api("/groups/#{group_no_members.id}/members", owner), user_id: new_user.id, access_level: GroupMember::MASTER response.status.should == 201 json_response['name'].should == new_user.name - json_response['access_level'].should == UsersGroup::MASTER - group_no_members.users_groups.count.should == count_before + 1 + json_response['access_level'].should == GroupMember::MASTER + group_no_members.group_members.count.should == count_before + 1 end it "should return error if member already exists" do - post api("/groups/#{group_with_members.id}/members", owner), user_id: master.id, access_level: UsersGroup::MASTER + post api("/groups/#{group_with_members.id}/members", owner), user_id: master.id, access_level: GroupMember::MASTER response.status.should == 409 end it "should return a 400 error when user id is not given" do - post api("/groups/#{group_no_members.id}/members", owner), access_level: UsersGroup::MASTER + post api("/groups/#{group_no_members.id}/members", owner), access_level: GroupMember::MASTER response.status.should == 400 end @@ -262,10 +262,10 @@ describe API::API, api: true do context "when a member of the group" do it "should delete guest's membership of group" do - count_before=group_with_members.users_groups.count + count_before=group_with_members.group_members.count delete api("/groups/#{group_with_members.id}/members/#{guest.id}", owner) response.status.should == 200 - group_with_members.users_groups.count.should == count_before - 1 + group_with_members.group_members.count.should == count_before - 1 end it "should return a 404 error when user id is not known" do diff --git a/spec/requests/api/project_members_spec.rb b/spec/requests/api/project_members_spec.rb index 3c480c2ac4b..e101f871ff0 100644 --- a/spec/requests/api/project_members_spec.rb +++ b/spec/requests/api/project_members_spec.rb @@ -6,8 +6,8 @@ describe API::API, api: true do let(:user2) { create(:user) } let(:user3) { create(:user) } let(:project) { create(:project, creator_id: user.id, namespace: user.namespace) } - let(:users_project) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) } - let(:users_project2) { create(:users_project, user: user3, project: project, project_access: UsersProject::DEVELOPER) } + let(:users_project) { create(:users_project, user: user, project: project, project_access: ProjectMember::MASTER) } + let(:users_project2) { create(:users_project, user: user3, project: project, project_access: ProjectMember::DEVELOPER) } describe "GET /projects/:id/members" do before { users_project } @@ -42,7 +42,7 @@ describe API::API, api: true do get api("/projects/#{project.id}/members/#{user.id}", user) response.status.should == 200 json_response['username'].should == user.username - json_response['access_level'].should == UsersProject::MASTER + json_response['access_level'].should == ProjectMember::MASTER end it "should return a 404 error if user id not found" do @@ -55,29 +55,29 @@ describe API::API, api: true do it "should add user to project team" do expect { post api("/projects/#{project.id}/members", user), user_id: user2.id, - access_level: UsersProject::DEVELOPER - }.to change { UsersProject.count }.by(1) + access_level: ProjectMember::DEVELOPER + }.to change { ProjectMember.count }.by(1) response.status.should == 201 json_response['username'].should == user2.username - json_response['access_level'].should == UsersProject::DEVELOPER + json_response['access_level'].should == ProjectMember::DEVELOPER end it "should return a 201 status if user is already project member" do post api("/projects/#{project.id}/members", user), user_id: user2.id, - access_level: UsersProject::DEVELOPER + access_level: ProjectMember::DEVELOPER expect { post api("/projects/#{project.id}/members", user), user_id: user2.id, - access_level: UsersProject::DEVELOPER - }.not_to change { UsersProject.count }.by(1) + access_level: ProjectMember::DEVELOPER + }.not_to change { ProjectMember.count }.by(1) response.status.should == 201 json_response['username'].should == user2.username - json_response['access_level'].should == UsersProject::DEVELOPER + json_response['access_level'].should == ProjectMember::DEVELOPER end it "should return a 400 error when user id is not given" do - post api("/projects/#{project.id}/members", user), access_level: UsersProject::MASTER + post api("/projects/#{project.id}/members", user), access_level: ProjectMember::MASTER response.status.should == 400 end @@ -96,14 +96,14 @@ describe API::API, api: true do before { users_project2 } it "should update project team member" do - put api("/projects/#{project.id}/members/#{user3.id}", user), access_level: UsersProject::MASTER + put api("/projects/#{project.id}/members/#{user3.id}", user), access_level: ProjectMember::MASTER response.status.should == 200 json_response['username'].should == user3.username - json_response['access_level'].should == UsersProject::MASTER + json_response['access_level'].should == ProjectMember::MASTER end it "should return a 404 error if user_id is not found" do - put api("/projects/#{project.id}/members/1234", user), access_level: UsersProject::MASTER + put api("/projects/#{project.id}/members/1234", user), access_level: ProjectMember::MASTER response.status.should == 404 end @@ -125,14 +125,14 @@ describe API::API, api: true do it "should remove user from project team" do expect { delete api("/projects/#{project.id}/members/#{user3.id}", user) - }.to change { UsersProject.count }.by(-1) + }.to change { ProjectMember.count }.by(-1) end it "should return 200 if team member is not part of a project" do delete api("/projects/#{project.id}/members/#{user3.id}", user) expect { delete api("/projects/#{project.id}/members/#{user3.id}", user) - }.to_not change { UsersProject.count }.by(1) + }.to_not change { ProjectMember.count }.by(1) end it "should return 200 if team member already removed" do @@ -144,7 +144,7 @@ describe API::API, api: true do it "should return 200 OK when the user was not member" do expect { delete api("/projects/#{project.id}/members/1000000", user) - }.to change { UsersProject.count }.by(0) + }.to change { ProjectMember.count }.by(0) response.status.should == 200 json_response['message'].should == "Access revoked" json_response['id'].should == 1000000 diff --git a/spec/requests/api/projects_spec.rb b/spec/requests/api/projects_spec.rb index 058b831e783..7d36043e3d8 100644 --- a/spec/requests/api/projects_spec.rb +++ b/spec/requests/api/projects_spec.rb @@ -8,8 +8,8 @@ describe API::API, api: true do let(:admin) { create(:admin) } let(:project) { create(:project, creator_id: user.id, namespace: user.namespace) } let(:snippet) { create(:project_snippet, author: user, project: project, title: 'example') } - let(:users_project) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) } - let(:users_project2) { create(:users_project, user: user3, project: project, project_access: UsersProject::DEVELOPER) } + let(:users_project) { create(:users_project, user: user, project: project, project_access: ProjectMember::MASTER) } + let(:users_project2) { create(:users_project, user: user3, project: project, project_access: ProjectMember::DEVELOPER) } describe "GET /projects" do before { project } diff --git a/spec/requests/api/repositories_spec.rb b/spec/requests/api/repositories_spec.rb index 17173aaeeac..ba404901a49 100644 --- a/spec/requests/api/repositories_spec.rb +++ b/spec/requests/api/repositories_spec.rb @@ -8,8 +8,8 @@ describe API::API, api: true do let(:user) { create(:user) } let(:user2) { create(:user) } let!(:project) { create(:project, creator_id: user.id) } - let!(:master) { create(:users_project, user: user, project: project, project_access: UsersProject::MASTER) } - let!(:guest) { create(:users_project, user: user2, project: project, project_access: UsersProject::GUEST) } + let!(:master) { create(:users_project, user: user, project: project, project_access: ProjectMember::MASTER) } + let!(:guest) { create(:users_project, user: user2, project: project, project_access: ProjectMember::GUEST) } before { project.team << [user, :reporter] } diff --git a/spec/services/notification_service_spec.rb b/spec/services/notification_service_spec.rb index df355f6f07a..f8377650e0a 100644 --- a/spec/services/notification_service_spec.rb +++ b/spec/services/notification_service_spec.rb @@ -64,12 +64,12 @@ describe NotificationService do before do note.project.namespace_id = group.id - note.project.group.add_user(@u_watcher, UsersGroup::MASTER) + note.project.group.add_user(@u_watcher, GroupMember::MASTER) note.project.save - user_project = note.project.users_projects.find_by_user_id(@u_watcher.id) + user_project = note.project.project_members.find_by_user_id(@u_watcher.id) user_project.notification_level = Notification::N_PARTICIPATING user_project.save - user_group = note.project.group.users_groups.find_by_user_id(@u_watcher.id) + user_group = note.project.group.group_members.find_by_user_id(@u_watcher.id) user_group.notification_level = Notification::N_GLOBAL user_group.save end -- cgit v1.2.1