Commit 69854c56255d93fe3e0aed0fbd7ba73ec44eda11
Exists in
master
and in
4 other branches
Merge pull request #4736 from karlhungus/feature-create-wiki-repo-on-repo-enabled
Create a wiki when wiki_enabled:true
Showing
2 changed files
with
32 additions
and
1 deletions
Show diff stats
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 |