summaryrefslogtreecommitdiff
path: root/spec/observers
diff options
context:
space:
mode:
authorAlex Denisov <1101.debian@gmail.com>2012-09-20 10:25:29 +0300
committerAlex Denisov <1101.debian@gmail.com>2012-09-20 10:25:29 +0300
commite6ce47291b3f08ebe18c2450fc4f21a2a3a2b8a9 (patch)
tree0e5fa008658b3e890cc447477f533f35c45aafa5 /spec/observers
parent77bfc591bf5836892be26059d92411f9fbf04be9 (diff)
parent6104942438c14ec7bd21c6cd5bd995272b3faff6 (diff)
downloadgitlab-ce-e6ce47291b3f08ebe18c2450fc4f21a2a3a2b8a9.tar.gz
master merged
Diffstat (limited to 'spec/observers')
-rw-r--r--spec/observers/user_observer_spec.rb7
-rw-r--r--spec/observers/users_project_observer_spec.rb28
2 files changed, 22 insertions, 13 deletions
diff --git a/spec/observers/user_observer_spec.rb b/spec/observers/user_observer_spec.rb
index 23dac98bb74..0420a250c8a 100644
--- a/spec/observers/user_observer_spec.rb
+++ b/spec/observers/user_observer_spec.rb
@@ -13,7 +13,7 @@ describe UserObserver do
end
context 'when a new user is created' do
- let(:user) { double(:user, id: 42, password: 'P@ssword!') }
+ let(:user) { double(:user, id: 42, password: 'P@ssword!', name: 'John', email: 'u@mail.local') }
let(:notification) { double :notification }
it 'sends an email' do
@@ -22,5 +22,10 @@ describe UserObserver do
subject.after_create(user)
end
+
+ it 'trigger logger' do
+ Gitlab::AppLogger.should_receive(:info)
+ subject.after_create(user)
+ end
end
end
diff --git a/spec/observers/users_project_observer_spec.rb b/spec/observers/users_project_observer_spec.rb
index 650321ce91c..2009b85ffc8 100644
--- a/spec/observers/users_project_observer_spec.rb
+++ b/spec/observers/users_project_observer_spec.rb
@@ -1,6 +1,7 @@
require 'spec_helper'
describe UsersProjectObserver do
+# let(:users_project) { stub.as_null_object }
let(:user) { Factory.create :user }
let(:project) { Factory.create(:project,
code: "Fuu",
@@ -14,21 +15,23 @@ describe UsersProjectObserver do
it "should called when UsersProject created" do
subject.should_receive(:after_commit).once
UsersProject.observers.enable :users_project_observer do
- Factory.create(:users_project,
- project: project,
- user: user)
+ create(:users_project)
end
end
+
it "should send email to user" do
Notify.should_receive(:project_access_granted_email).with(users_project.id).and_return(double(deliver: true))
subject.after_commit(users_project)
+ Event.stub(:create => true)
end
+
it "should create new event" do
Event.should_receive(:create).with(
- project_id: users_project.project.id,
- action: Event::Joined,
+ project_id: users_project.project.id,
+ action: Event::Joined,
author_id: users_project.user.id
)
+
subject.after_create(users_project)
end
end
@@ -37,9 +40,10 @@ describe UsersProjectObserver do
it "should called when UsersProject updated" do
subject.should_receive(:after_commit).once
UsersProject.observers.enable :users_project_observer do
- users_project.update_attribute(:project_access, 40)
+ create(:users_project).update_attribute(:project_access, UsersProject::MASTER)
end
end
+
it "should send email to user" do
Notify.should_receive(:project_access_granted_email).with(users_project.id).and_return(double(deliver: true))
subject.after_commit(users_project)
@@ -51,20 +55,20 @@ describe UsersProjectObserver do
end
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]
- )
+ create(:users_project).destroy
end
end
+
it "should create new event" do
Event.should_receive(:create).with(
- project_id: users_project.project.id,
- action: Event::Left,
+ project_id: users_project.project.id,
+ action: Event::Left,
author_id: users_project.user.id
)
subject.after_destroy(users_project)