summaryrefslogtreecommitdiff
path: root/spec
diff options
context:
space:
mode:
authorDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-19 21:44:05 +0300
committerDmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>2012-11-19 21:44:05 +0300
commit85007434645c817e7674003bbdda0674287dd106 (patch)
tree416fa2c5278af126a72055a11db4b0f8c02771dc /spec
parent95c23b2f974ec15e89cd7e762c80af0fa0ce57a5 (diff)
downloadgitlab-ce-85007434645c817e7674003bbdda0674287dd106.tar.gz
Post Receive Refactored. Service hooks also triggered now
Diffstat (limited to 'spec')
-rw-r--r--spec/models/project_hooks_spec.rb14
-rw-r--r--spec/workers/post_receive_spec.rb14
2 files changed, 13 insertions, 15 deletions
diff --git a/spec/models/project_hooks_spec.rb b/spec/models/project_hooks_spec.rb
index ee441ec4ec5..7c8f05b17a3 100644
--- a/spec/models/project_hooks_spec.rb
+++ b/spec/models/project_hooks_spec.rb
@@ -11,13 +11,15 @@ describe Project, "Hooks" do
describe "Post Receive Event" do
it "should create push event" do
oldrev, newrev, ref = '00000000000000000000000000000000', 'newrev', 'refs/heads/master'
- project.observe_push(oldrev, newrev, ref, @user)
+ data = project.post_receive_data(oldrev, newrev, ref, @user)
+
+ project.observe_push(data)
event = Event.last
event.should_not be_nil
event.project.should == project
event.action.should == Event::Pushed
- event.data == project.post_receive_data(oldrev, newrev, ref, @user)
+ event.data.should == data
end
end
@@ -25,7 +27,7 @@ describe Project, "Hooks" do
context "with no web hooks" do
it "raises no errors" do
lambda {
- project.execute_hooks('oldrev', 'newrev', 'ref', @user)
+ project.execute_hooks({})
}.should_not raise_error
end
end
@@ -41,7 +43,7 @@ describe Project, "Hooks" do
@project_hook.should_receive(:execute).once
@project_hook_2.should_receive(:execute).once
- project.execute_hooks('oldrev', 'newrev', 'refs/heads/master', @user)
+ project.trigger_post_receive('oldrev', 'newrev', 'refs/heads/master', @user)
end
end
@@ -53,12 +55,12 @@ describe Project, "Hooks" do
it "when pushing a branch for the first time" do
@project_hook.should_not_receive(:execute)
- project.execute_hooks('00000000000000000000000000000000', 'newrev', 'refs/heads/master', @user)
+ project.trigger_post_receive('00000000000000000000000000000000', 'newrev', 'refs/heads/master', @user)
end
it "when pushing tags" do
@project_hook.should_not_receive(:execute)
- project.execute_hooks('oldrev', 'newrev', 'refs/tags/v1.0.0', @user)
+ project.trigger_post_receive('oldrev', 'newrev', 'refs/tags/v1.0.0', @user)
end
end
diff --git a/spec/workers/post_receive_spec.rb b/spec/workers/post_receive_spec.rb
index 22e3e0d0fe5..bbc91f4474a 100644
--- a/spec/workers/post_receive_spec.rb
+++ b/spec/workers/post_receive_spec.rb
@@ -27,16 +27,12 @@ describe PostReceive do
PostReceive.perform(project.path, 'sha-old', 'sha-new', 'refs/heads/master', key_id).should be_false
end
- it "asks the project to execute web hooks" do
+ it "asks the project to trigger all hooks" do
Project.stub(find_by_path: project)
- project.should_receive(:execute_hooks).with('sha-old', 'sha-new', 'refs/heads/master', project.owner)
-
- PostReceive.perform(project.path, 'sha-old', 'sha-new', 'refs/heads/master', key_id)
- end
-
- it "asks the project to observe push/create event data" do
- Project.stub(find_by_path: project)
- project.should_receive(:observe_push).with('sha-old', 'sha-new', 'refs/heads/master', project.owner)
+ project.should_receive(:execute_hooks)
+ project.should_receive(:execute_services)
+ project.should_receive(:update_merge_requests)
+ project.should_receive(:observe_push)
PostReceive.perform(project.path, 'sha-old', 'sha-new', 'refs/heads/master', key_id)
end