diff options
author | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-02-05 10:42:01 +0200 |
---|---|---|
committer | Dmitriy Zaporozhets <dmitriy.zaporozhets@gmail.com> | 2013-02-05 10:42:01 +0200 |
commit | 23c76715a8a3fcf2fca20891d709c63ba4131fa5 (patch) | |
tree | 7abfe9881e932e36a5c268d0e286a4b126dff55e | |
parent | c902d83b45ac981d186540dfea80a887882501cf (diff) | |
download | gitlab-shell-23c76715a8a3fcf2fca20891d709c63ba4131fa5.tar.gz |
let test adding repo for real
-rw-r--r-- | lib/gitlab_projects.rb | 8 | ||||
-rw-r--r-- | spec/gitlab_projects_spec.rb | 17 |
2 files changed, 20 insertions, 5 deletions
diff --git a/lib/gitlab_projects.rb b/lib/gitlab_projects.rb index ae8cb2d..83f542a 100644 --- a/lib/gitlab_projects.rb +++ b/lib/gitlab_projects.rb @@ -3,7 +3,7 @@ require 'fileutils' require_relative 'gitlab_config' class GitlabProjects - attr_accessor :project_name + attr_reader :project_name, :full_path def initialize @command = ARGV.shift @@ -25,12 +25,12 @@ class GitlabProjects protected def add_project - FileUtils.mkdir_p(@full_path, mode: 0770) - cmd = "cd #{@full_path} && git init --bare && ln -s #{@hook_path} #{@full_path}/hooks/post-receive" + FileUtils.mkdir_p(full_path, mode: 0770) + cmd = "cd #{full_path} && git init --bare && ln -s #{@hook_path} #{full_path}/hooks/post-receive" system(cmd) end def rm_project - FileUtils.rm_rf(@full_path) + FileUtils.rm_rf(full_path) end end diff --git a/spec/gitlab_projects_spec.rb b/spec/gitlab_projects_spec.rb index 95e4b92..4722a35 100644 --- a/spec/gitlab_projects_spec.rb +++ b/spec/gitlab_projects_spec.rb @@ -17,10 +17,21 @@ describe GitlabProjects do before do argv('add-project', 'gitlab-ci.git') @gl_projects = GitlabProjects.new + @gl_projects.stub(full_path: tmp_repo_path) + end + + after do + FileUtils.rm_rf(tmp_repo_path) + end + + it "should create a directory" do + @gl_projects.stub(system: true) + @gl_projects.send :add_project + File.exists?(tmp_repo_path).should be_true end it "should receive valid cmd" do - valid_cmd = "cd /home/git/repositories/gitlab-ci.git && git init --bare && ln -s /home/git/gitlab-shell/hooks/post-receive /home/git/repositories/gitlab-ci.git/hooks/post-receive" + valid_cmd = "cd #{tmp_repo_path} && git init --bare && ln -s /home/git/gitlab-shell/hooks/post-receive #{tmp_repo_path}/hooks/post-receive" @gl_projects.should_receive(:system).with(valid_cmd) @gl_projects.send :add_project end @@ -31,4 +42,8 @@ describe GitlabProjects do ARGV[i] = arg end end + + def tmp_repo_path + File.join(ROOT_PATH, 'tmp', 'gitlab-ci.git') + end end |