Commit 9d5bb5a79248861a2bd6439ceb7b5ccaeb5fa068

Authored by Izaak Alpert
1 parent af1a3391

Brings this fix inline with updates to master

Change-Id: Ia50c3ac043b4c927ca59cbbdc2bba42f73e550e4
app/contexts/projects/create_context.rb
@@ -46,15 +46,6 @@ module Projects @@ -46,15 +46,6 @@ module Projects
46 46
47 @project.creator = current_user 47 @project.creator = current_user
48 48
49 - if @project.valid? && @project.wiki_enabled?  
50 - begin  
51 - #force the creation of a wiki,  
52 - GollumWiki.new(@project, current_user).wiki  
53 - rescue => exception  
54 - @project.errors.add(:wiki_enabled, 'cannot create wiki')  
55 - end  
56 - end  
57 -  
58 if @project.save 49 if @project.save
59 @project.discover_default_branch 50 @project.discover_default_branch
60 51
app/observers/project_observer.rb
@@ -14,6 +14,12 @@ class ProjectObserver < BaseObserver @@ -14,6 +14,12 @@ 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
  22 +
17 end 23 end
18 24
19 def after_update(project) 25 def after_update(project)
spec/observers/users_project_observer_spec.rb
@@ -65,4 +65,27 @@ describe UsersProjectObserver do @@ -65,4 +65,27 @@ describe UsersProjectObserver do
65 @users_project.destroy 65 @users_project.destroy
66 end 66 end
67 end 67 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 + after do
  77 + FileUtils.rm_rf(@path)
  78 + end
  79 + it { File.exists?(@path).should be_true }
  80 + end
  81 +
  82 + context 'wiki_enabled false does not create wiki repository directory' do
  83 + before do
  84 + @project = create(:project, wiki_enabled:false)
  85 + @path = GollumWiki.new(@project, user).send(:path_to_repo)
  86 + end
  87 + it { File.exists?(@path).should be_false }
  88 + end
  89 + end
  90 + end
68 end 91 end