diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-19 21:44:05 +0300 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2012-11-19 21:44:05 +0300 |
commit | 85007434645c817e7674003bbdda0674287dd106 (patch) | |
tree | 416fa2c5278af126a72055a11db4b0f8c02771dc /spec | |
parent | 95c23b2f974ec15e89cd7e762c80af0fa0ce57a5 (diff) | |
download | gitlab-ce-85007434645c817e7674003bbdda0674287dd106.tar.gz |
Post Receive Refactored. Service hooks also triggered now
Diffstat (limited to 'spec')
-rw-r--r-- | spec/models/project_hooks_spec.rb | 14 | ||||
-rw-r--r-- | spec/workers/post_receive_spec.rb | 14 |
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 |