From 483c034b86262fb9b2c47df999d995f500b38eb4 Mon Sep 17 00:00:00 2001 From: Alex Moore-Niemi Date: Wed, 20 Apr 2016 18:41:11 -0400 Subject: Changing the confidentiality of an issue now creates a new system note MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Rémy Coutable --- spec/services/issues/update_service_spec.rb | 20 ++++++++++++++------ spec/services/system_note_service_spec.rb | 12 ++++++++++++ 2 files changed, 26 insertions(+), 6 deletions(-) (limited to 'spec/services') diff --git a/spec/services/issues/update_service_spec.rb b/spec/services/issues/update_service_spec.rb index 52f69306994..c9d8f1b382c 100644 --- a/spec/services/issues/update_service_spec.rb +++ b/spec/services/issues/update_service_spec.rb @@ -27,11 +27,6 @@ describe Issues::UpdateService, services: true do end end - def update_issue(opts) - @issue = Issues::UpdateService.new(project, user, opts).execute(issue) - @issue.reload - end - context "valid params" do before do opts = { @@ -39,7 +34,8 @@ describe Issues::UpdateService, services: true do description: 'Also please fix', assignee_id: user2.id, state_event: 'close', - label_ids: [label.id] + label_ids: [label.id], + confidential: true } perform_enqueued_jobs do @@ -84,6 +80,18 @@ describe Issues::UpdateService, services: true do expect(note).not_to be_nil expect(note.note).to eq 'Title changed from **Old title** to **New title**' end + + it 'creates system note about confidentiality change' do + note = find_note('Marked as confidential') + + expect(note).not_to be_nil + expect(note.note).to eq 'Marked as confidential' + end + end + + def update_issue(opts) + @issue = Issues::UpdateService.new(project, user, opts).execute(issue) + @issue.reload end context 'todos' do diff --git a/spec/services/system_note_service_spec.rb b/spec/services/system_note_service_spec.rb index 5fbf2ae5247..4fa60436155 100644 --- a/spec/services/system_note_service_spec.rb +++ b/spec/services/system_note_service_spec.rb @@ -254,6 +254,18 @@ describe SystemNoteService, services: true do end end + describe '.change_confidentiality' do + subject { described_class.change_confidentiality(noteable, project, author) } + + context 'when noteable responds to `confidential`' do + it_behaves_like 'a system note' + + it 'sets the note text' do + expect(subject.note).to eq "Marked as not confidential" + end + end + end + describe '.change_branch' do subject { described_class.change_branch(noteable, project, author, 'target', old_branch, new_branch) } let(:old_branch) { 'old_branch'} -- cgit v1.2.3