summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSean McGivern <sean@mcgivern.me.uk>2016-11-01 14:05:51 +0000
committerSean McGivern <sean@mcgivern.me.uk>2016-11-01 14:05:51 +0000
commit3be247b087f6b971779f9f74712b1afe74910727 (patch)
tree4fece089bf056d0e6bdadfaad74a2d6c75a42ea2
parent51f303967c7bd86066cb879058d1344e5872eb0f (diff)
parentf6cff8f7bc6608d53baa36768034ab9f91323abe (diff)
downloadgitlab-ce-3be247b087f6b971779f9f74712b1afe74910727.tar.gz
Merge branch 'adam-fix-wiki-links-markdown' into 'master'
Fix relative links in Markdown wiki when displayed in "Project" tab Refers to #23806 See merge request !7218
-rw-r--r--CHANGELOG.md1
-rw-r--r--app/controllers/projects_controller.rb3
-rw-r--r--spec/features/projects/wiki/user_views_wiki_in_project_page_spec.rb44
3 files changed, 47 insertions, 1 deletions
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 498eac9a289..98ae6855875 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -45,6 +45,7 @@ Please view this file on the master branch, on stable branches it's out of date.
## 8.13.3
+- Fix relative links in Markdown wiki when displayed in "Project" tab !7218
- Reduce the overhead to calculate number of open/closed issues and merge requests within the group or project
## 8.13.2 (2016-10-31)
diff --git a/app/controllers/projects_controller.rb b/app/controllers/projects_controller.rb
index 8c148ecfaeb..bce5e29d8d8 100644
--- a/app/controllers/projects_controller.rb
+++ b/app/controllers/projects_controller.rb
@@ -289,7 +289,8 @@ class ProjectsController < Projects::ApplicationController
render 'projects/empty' if @project.empty_repo?
else
if @project.wiki_enabled?
- @wiki_home = @project.wiki.find_page('home', params[:version_id])
+ @project_wiki = @project.wiki
+ @wiki_home = @project_wiki.find_page('home', params[:version_id])
elsif @project.feature_available?(:issues, current_user)
@issues = issues_collection
@issues = @issues.page(params[:page])
diff --git a/spec/features/projects/wiki/user_views_wiki_in_project_page_spec.rb b/spec/features/projects/wiki/user_views_wiki_in_project_page_spec.rb
new file mode 100644
index 00000000000..b4f5f6b3fc5
--- /dev/null
+++ b/spec/features/projects/wiki/user_views_wiki_in_project_page_spec.rb
@@ -0,0 +1,44 @@
+require 'spec_helper'
+
+describe 'Projects > Wiki > User views wiki in project page', feature: true do
+ let(:user) { create(:user) }
+ let(:project) { create(:empty_project) }
+
+ before do
+ project.team << [user, :master]
+ login_as(user)
+ end
+
+ context 'when repository is disabled for project' do
+ before do
+ project.project_feature.update!(
+ repository_access_level: ProjectFeature::DISABLED,
+ merge_requests_access_level: ProjectFeature::DISABLED,
+ builds_access_level: ProjectFeature::DISABLED
+ )
+ end
+
+ context 'when wiki homepage contains a link' do
+ before do
+ WikiPages::CreateService.new(
+ project,
+ user,
+ title: 'home',
+ content: '[some link](other-page)'
+ ).execute
+ end
+
+ it 'displays the correct URL for the link' do
+ visit namespace_project_path(project.namespace, project)
+ expect(page).to have_link(
+ 'some link',
+ href: namespace_project_wiki_path(
+ project.namespace,
+ project,
+ 'other-page'
+ )
+ )
+ end
+ end
+ end
+end