summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/hook_data/issuable_builder_spec.rb
diff options
context:
space:
mode:
authorRémy Coutable <remy@rymai.me>2017-10-05 19:02:50 +0200
committerRémy Coutable <remy@rymai.me>2017-10-09 16:44:47 +0200
commitf070265a6ddd0173c8924bfcd7791ecafa15ab7e (patch)
treecf364687889aa546f39b607aa57db839d7059c97 /spec/lib/gitlab/hook_data/issuable_builder_spec.rb
parent075d6516047d899746d22b5323d3b74558e200d0 (diff)
downloadgitlab-ce-f070265a6ddd0173c8924bfcd7791ecafa15ab7e.tar.gz
Introduce new hook data builders for Issue and MergeRequest34284-add-changes-to-issuable-webhook-data
Signed-off-by: Rémy Coutable <remy@rymai.me>
Diffstat (limited to 'spec/lib/gitlab/hook_data/issuable_builder_spec.rb')
-rw-r--r--spec/lib/gitlab/hook_data/issuable_builder_spec.rb18
1 files changed, 13 insertions, 5 deletions
diff --git a/spec/lib/gitlab/hook_data/issuable_builder_spec.rb b/spec/lib/gitlab/hook_data/issuable_builder_spec.rb
index 31cc5eaea88..30da56bec16 100644
--- a/spec/lib/gitlab/hook_data/issuable_builder_spec.rb
+++ b/spec/lib/gitlab/hook_data/issuable_builder_spec.rb
@@ -37,15 +37,23 @@ describe Gitlab::HookData::IssuableBuilder do
lock_version: %w[foo bar],
merge_jid: %w[foo bar],
title: ['A title', 'Hello World'],
- title_html: %w[foo bar]
+ title_html: %w[foo bar],
+ labels: [
+ [{ id: 1, title: 'foo' }],
+ [{ id: 1, title: 'foo' }, { id: 2, title: 'bar' }]
+ ]
}
end
let(:data) { builder.build(user: user, changes: changes) }
it 'populates the :changes hash' do
expect(data[:changes]).to match(hash_including({
- title: ['A title', 'Hello World'],
- description: ['A description', 'A cool description']
+ title: { previous: 'A title', current: 'Hello World' },
+ description: { previous: 'A description', current: 'A cool description' },
+ labels: {
+ previous: [{ id: 1, title: 'foo' }],
+ current: [{ id: 1, title: 'foo' }, { id: 2, title: 'bar' }]
+ }
}))
end
@@ -73,7 +81,7 @@ describe Gitlab::HookData::IssuableBuilder do
end
context 'issue is assigned' do
- let(:issue) { create(:issue).tap { |i| i.assignees << user } }
+ let(:issue) { create(:issue, assignees: [user]) }
let(:data) { described_class.new(issue).build(user: user) }
it 'returns correct hook data' do
@@ -84,7 +92,7 @@ describe Gitlab::HookData::IssuableBuilder do
end
context 'merge_request is assigned' do
- let(:merge_request) { create(:merge_request).tap { |mr| mr.update(assignee: user) } }
+ let(:merge_request) { create(:merge_request, assignee: user) }
let(:data) { described_class.new(merge_request).build(user: user) }
it 'returns correct hook data' do