summaryrefslogtreecommitdiff
path: root/spec/services/labels
diff options
context:
space:
mode:
authorJan Provaznik <jprovaznik@gitlab.com>2018-04-19 08:17:12 +0000
committerSean McGivern <sean@mcgivern.me.uk>2018-04-19 08:17:12 +0000
commit470b3cb5a1009f63265efbd1a049ae7677b6c5c4 (patch)
tree58a4a70f4330bfb1ef7e2008488d4123ba040106 /spec/services/labels
parent0517e1d8538c57a4c298695a053368c497b86a87 (diff)
downloadgitlab-ce-470b3cb5a1009f63265efbd1a049ae7677b6c5c4.tar.gz
Fix label links update on project transfer
Diffstat (limited to 'spec/services/labels')
-rw-r--r--spec/services/labels/transfer_service_spec.rb10
1 files changed, 10 insertions, 0 deletions
diff --git a/spec/services/labels/transfer_service_spec.rb b/spec/services/labels/transfer_service_spec.rb
index ae819c011de..80bac590a11 100644
--- a/spec/services/labels/transfer_service_spec.rb
+++ b/spec/services/labels/transfer_service_spec.rb
@@ -8,6 +8,7 @@ describe Labels::TransferService do
let(:group_3) { create(:group) }
let(:project_1) { create(:project, namespace: group_2) }
let(:project_2) { create(:project, namespace: group_3) }
+ let(:project_3) { create(:project, namespace: group_1) }
let(:group_label_1) { create(:group_label, group: group_1, name: 'Group Label 1') }
let(:group_label_2) { create(:group_label, group: group_1, name: 'Group Label 2') }
@@ -23,6 +24,7 @@ describe Labels::TransferService do
create(:labeled_issue, project: project_1, labels: [group_label_4])
create(:labeled_issue, project: project_1, labels: [project_label_1])
create(:labeled_issue, project: project_2, labels: [group_label_5])
+ create(:labeled_issue, project: project_3, labels: [group_label_1])
create(:labeled_merge_request, source_project: project_1, labels: [group_label_1, group_label_2])
create(:labeled_merge_request, source_project: project_2, labels: [group_label_5])
end
@@ -52,5 +54,13 @@ describe Labels::TransferService do
expect(project_1.labels.where(title: group_label_4.title)).to be_empty
end
+
+ it 'updates only label links in the given project' do
+ service.execute
+
+ targets = LabelLink.where(label_id: group_label_1.id).map(&:target)
+
+ expect(targets).to eq(project_3.issues)
+ end
end
end