From 0cf0487d65a482b1e9d8dfe69899e333216a387c Mon Sep 17 00:00:00 2001
From: Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com>
Date: Tue, 26 Feb 2013 23:04:14 +0200
Subject: [PATCH] Fix TestHookContext

---
 app/contexts/test_hook_context.rb |  3 +--
 app/services/git_push_service.rb  | 10 ++++++++++
 2 files changed, 11 insertions(+), 2 deletions(-)

diff --git a/app/contexts/test_hook_context.rb b/app/contexts/test_hook_context.rb
index d2d82a52cf530..63eda6c7d0603 100644
--- a/app/contexts/test_hook_context.rb
+++ b/app/contexts/test_hook_context.rb
@@ -1,8 +1,7 @@
 class TestHookContext < BaseContext
   def execute
     hook = project.hooks.find(params[:id])
-    commits = project.repository.commits(project.default_branch, nil, 3)
-    data = project.post_receive_data(commits.last.id, commits.first.id, "refs/heads/#{project.default_branch}", current_user)
+    data = GitPushService.new.sample_data(project, current_user)
     hook.execute(data)
   end
 end
diff --git a/app/services/git_push_service.rb b/app/services/git_push_service.rb
index 55cf31cd8f88d..40d57c6757354 100644
--- a/app/services/git_push_service.rb
+++ b/app/services/git_push_service.rb
@@ -31,6 +31,16 @@ def execute(project, user, oldrev, newrev, ref)
     create_push_event
   end
 
+  # This method provide a sample data
+  # generated with post_receive_data method
+  # for given project
+  #
+  def sample_data(project, user)
+    @project, @user = project, user
+    commits = project.repository.commits(project.default_branch, nil, 3)
+    post_receive_data(commits.last.id, commits.first.id, "refs/heads/#{project.default_branch}")
+  end
+
   protected
 
   def create_push_event
-- 
GitLab