From 5607bb8f0921cbfa4586bb7b92acb6666a65b4e2 Mon Sep 17 00:00:00 2001
From: Alex Braha Stoll <alexbrahastoll@gmail.com>
Date: Sun, 18 Dec 2016 21:37:10 -0200
Subject: [PATCH] Change WikiPage#directory to always start a directory
 hierarchy with '/'

---
 app/models/wiki_page.rb       | 4 ++--
 spec/models/wiki_page_spec.rb | 4 ++--
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/app/models/wiki_page.rb b/app/models/wiki_page.rb
index 1dbb3407623..a563b0b7a72 100644
--- a/app/models/wiki_page.rb
+++ b/app/models/wiki_page.rb
@@ -89,7 +89,7 @@ class WikiPage
   # The hierarchy of the directory this page is contained in.
   def directory
     dir = wiki.page_title_and_dir(slug).last
-    dir.present? ? dir : '/'
+    "/#{dir}"
   end
 
   # The processed/formatted content of this page.
@@ -106,7 +106,7 @@ class WikiPage
 
   # The full path for this page, including its filename and extension.
   def full_path
-    "/#{directory}/#{page.filename}".gsub(/\/+/, '/')
+    "#{directory}/#{page.filename}".gsub(/\/+/, '/')
   end
 
   # The commit message for this page version.
diff --git a/spec/models/wiki_page_spec.rb b/spec/models/wiki_page_spec.rb
index c40a89b9dfb..91d5fccce60 100644
--- a/spec/models/wiki_page_spec.rb
+++ b/spec/models/wiki_page_spec.rb
@@ -27,7 +27,7 @@ describe WikiPage, models: true do
         page_2 = wiki.find_page('dir_1/page_2')
         page_3 = wiki.find_page('dir_1/dir_2/page_3')
         expected_grouped_pages = {
-          '/' => [page_1], 'dir_1' => [page_2], 'dir_1/dir_2' => [page_3]
+          '/' => [page_1], '/dir_1' => [page_2], '/dir_1/dir_2' => [page_3]
         }
 
         grouped_pages = WikiPage.group_by_directory(wiki.pages)
@@ -239,7 +239,7 @@ describe WikiPage, models: true do
         create_page('dir_1/dir_1_1/file', 'content')
         page = wiki.find_page('dir_1/dir_1_1/file')
 
-        expect(page.directory).to eq('dir_1/dir_1_1')
+        expect(page.directory).to eq('/dir_1/dir_1_1')
       end
     end
   end
-- 
GitLab