Commit 69854c56255d93fe3e0aed0fbd7ba73ec44eda11

Authored by Dmitriy Zaporozhets
2 parents e8d1e827 0cd28156

Merge pull request #4736 from karlhungus/feature-create-wiki-repo-on-repo-enabled

Create a wiki when wiki_enabled:true
app/observers/project_observer.rb
@@ -14,6 +14,11 @@ class ProjectObserver < BaseObserver @@ -14,6 +14,11 @@ class ProjectObserver < BaseObserver
14 14
15 log_info("#{project.owner.name} created a new project \"#{project.name_with_namespace}\"") 15 log_info("#{project.owner.name} created a new project \"#{project.name_with_namespace}\"")
16 end 16 end
  17 +
  18 + if project.wiki_enabled?
  19 + # force the creation of a wiki,
  20 + GollumWiki.new(project, project.owner).wiki
  21 + end
17 end 22 end
18 23
19 def after_update(project) 24 def after_update(project)
spec/observers/users_project_observer_spec.rb
@@ -65,4 +65,30 @@ describe UsersProjectObserver do @@ -65,4 +65,30 @@ describe UsersProjectObserver do
65 @users_project.destroy 65 @users_project.destroy
66 end 66 end
67 end 67 end
68 -end 68 +
  69 + describe "#after_create" do
  70 + context 'wiki_enabled creates repository directory' do
  71 + context 'wiki_enabled true creates wiki repository directory' do
  72 + before do
  73 + @project = create(:project, wiki_enabled: true)
  74 + @path = GollumWiki.new(@project, user).send(:path_to_repo)
  75 + end
  76 +
  77 + after do
  78 + FileUtils.rm_rf(@path)
  79 + end
  80 +
  81 + it { File.exists?(@path).should be_true }
  82 + end
  83 +
  84 + context 'wiki_enabled false does not create wiki repository directory' do
  85 + before do
  86 + @project = create(:project, wiki_enabled: false)
  87 + @path = GollumWiki.new(@project, user).send(:path_to_repo)
  88 + end
  89 +
  90 + it { File.exists?(@path).should be_false }
  91 + end
  92 + end
  93 + end
  94 +end
69 \ No newline at end of file 95 \ No newline at end of file