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 46  
47 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 49 if @project.save
59 50 @project.discover_default_branch
60 51  
... ...
app/observers/project_observer.rb
... ... @@ -14,6 +14,12 @@ class ProjectObserver < BaseObserver
14 14  
15 15 log_info("#{project.owner.name} created a new project \"#{project.name_with_namespace}\"")
16 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 23 end
18 24  
19 25 def after_update(project)
... ...
spec/observers/users_project_observer_spec.rb
... ... @@ -65,4 +65,27 @@ describe UsersProjectObserver do
65 65 @users_project.destroy
66 66 end
67 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 91 end
... ...