Commit 02924de3 authored by Robb Kidd's avatar Robb Kidd

Add method to Note to create notes about status changes.

parent 00ec81ea
...@@ -42,6 +42,14 @@ class Note < ActiveRecord::Base ...@@ -42,6 +42,14 @@ class Note < ActiveRecord::Base
mount_uploader :attachment, AttachmentUploader mount_uploader :attachment, AttachmentUploader
def self.create_status_change_note(noteable, author, status)
create({ :noteable => noteable,
:project => noteable.project,
:author => author,
:note => "_Status changed to #{status}_" },
:without_protection => true)
end
def notify def notify
@notify ||= false @notify ||= false
end end
......
...@@ -70,6 +70,25 @@ describe Note do ...@@ -70,6 +70,25 @@ describe Note do
end end
end end
describe '#create_status_change_note' do
let(:project) { Factory.create(:project) }
let(:thing) { Factory.create(:issue, :project => project) }
let(:author) { Factory(:user) }
let(:status) { 'new_status' }
subject { Note.create_status_change_note(thing, author, status) }
it 'creates and saves a Note' do
should be_a Note
subject.id.should_not be_nil
end
its(:noteable) { should == thing }
its(:project) { should == thing.project }
its(:author) { should == author }
its(:note) { should =~ /Status changed to #{status}/ }
end
describe :authorization do describe :authorization do
before do before do
@p1 = project @p1 = project
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment