User left project event added

This commit is contained in:
Alex Denisov 2012-09-10 00:27:47 +03:00
parent a86bd87afc
commit 1f240b09ed
10 changed files with 75 additions and 10 deletions

View file

@ -50,7 +50,7 @@ describe Event do
it { @event.author.should == @user }
end
describe "New team mamber" do
describe "Joined project team" do
let(:project) {Factory.create :project}
let(:new_user) {Factory.create :user}
it "should create event" do
@ -60,4 +60,15 @@ describe Event do
}.to change{Event.count}.by(1)
end
end
describe "Left project team" do
let(:project) {Factory.create :project}
let(:new_user) {Factory.create :user}
it "should create event" do
UsersProject.bulk_import(project, [new_user.id], UsersProject::DEVELOPER)
UsersProject.observers.enable :users_project_observer
expect{
UsersProject.bulk_delete(project, [new_user.id])
}.to change{Event.count}.by(1)
end
end
end

View file

@ -45,4 +45,23 @@ describe UsersProjectObserver do
subject.after_update(users_project)
end
end
describe "#after_destroy" do
it "should called when UsersProject destroyed" do
subject.should_receive(:after_destroy)
UsersProject.observers.enable :users_project_observer do
UsersProject.bulk_delete(
users_project.project,
[users_project.user.id]
)
end
end
it "should create new event" do
Event.should_receive(:create).with(
project_id: users_project.project.id,
action: Event::Left,
author_id: users_project.user.id
)
subject.after_destroy(users_project)
end
end
end