diff options
author | Rémy Coutable <remy@rymai.me> | 2016-01-13 20:18:59 +0300 |
---|---|---|
committer | Rémy Coutable <remy@rymai.me> | 2016-01-13 20:18:59 +0300 |
commit | 1f0b8c32e75b446848cead98c550e750801be534 (patch) | |
tree | 3e9da5e96549916eb993dcae0cb28ac56956542f /spec | |
parent | 5e452d3794ffa4996611ecf53c6098f4a3913d4a (diff) |
Add spec for Note#cross_reference_not_visible_for?
Diffstat (limited to 'spec')
-rw-r--r-- | spec/models/note_spec.rb | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/spec/models/note_spec.rb b/spec/models/note_spec.rb index 151a29e974b..65e6a7df3b4 100644 --- a/spec/models/note_spec.rb +++ b/spec/models/note_spec.rb @@ -178,6 +178,30 @@ describe Note, models: true do end end + describe "cross_reference_not_visible_for?" do + let(:private_user) { create(:user) } + let(:private_project) { create(:project, namespace: private_user.namespace).tap { |p| p.team << [private_user, :master] } } + let(:private_issue) { create(:issue, project: private_project) } + + let(:ext_proj) { create(:project, :public) } + let(:ext_issue) { create(:issue, project: ext_proj) } + + let(:note) { + create :note, + noteable: ext_issue, project: ext_proj, + note: "mentioned in issue #{private_issue.to_reference(ext_proj)}", + system: true + } + + it "returns true" do + expect(note.cross_reference_not_visible_for?(ext_issue.author)).to be_truthy + end + + it "returns false" do + expect(note.cross_reference_not_visible_for?(private_user)).to be_falsy + end + end + describe "set_award!" do let(:issue) { create :issue } |