From ca268b85f62448584eb8455048069669efdcc990 Mon Sep 17 00:00:00 2001
From: Robert Speicher <rspeicher@gmail.com>
Date: Sat, 2 May 2015 23:59:55 -0400
Subject: [PATCH] Use to_reference in Markdown feature spec

---
 spec/features/markdown_spec.rb | 17 ++++-----
 spec/fixtures/markdown.md.erb  | 64 +++++++++++++++++-----------------
 2 files changed, 38 insertions(+), 43 deletions(-)

diff --git a/spec/features/markdown_spec.rb b/spec/features/markdown_spec.rb
index 8f3dfc8d5a9..0fc144462f2 100644
--- a/spec/features/markdown_spec.rb
+++ b/spec/features/markdown_spec.rb
@@ -344,13 +344,13 @@ class MarkdownFeature
   end
 
   def commit
-    @commit ||= project.repository.commit
+    @commit ||= project.commit
   end
 
   def commit_range
     unless @commit_range
-      commit2 = project.repository.commit('HEAD~3')
-      @commit_range = CommitRange.new("#{commit.id}...#{commit2.id}")
+      commit2 = project.commit('HEAD~3')
+      @commit_range = CommitRange.new("#{commit.id}...#{commit2.id}", project)
     end
 
     @commit_range
@@ -376,11 +376,6 @@ class MarkdownFeature
     @xproject
   end
 
-  # Shortcut to "cross-reference/project"
-  def xref
-    xproject.path_with_namespace
-  end
-
   def xissue
     @xissue ||= create(:issue, project: xproject)
   end
@@ -394,13 +389,13 @@ class MarkdownFeature
   end
 
   def xcommit
-    @xcommit ||= xproject.repository.commit
+    @xcommit ||= xproject.commit
   end
 
   def xcommit_range
     unless @xcommit_range
-      xcommit2 = xproject.repository.commit('HEAD~2')
-      @xcommit_range = CommitRange.new("#{xcommit.id}...#{xcommit2.id}")
+      xcommit2 = xproject.commit('HEAD~2')
+      @xcommit_range = CommitRange.new("#{xcommit.id}...#{xcommit2.id}", xproject)
     end
 
     @xcommit_range
diff --git a/spec/fixtures/markdown.md.erb b/spec/fixtures/markdown.md.erb
index 64817ec6700..26fc4e38e5a 100644
--- a/spec/fixtures/markdown.md.erb
+++ b/spec/fixtures/markdown.md.erb
@@ -127,61 +127,61 @@ But it shouldn't autolink text inside certain tags:
 - <a>http://about.gitlab.com/</a>
 - <kbd>http://about.gitlab.com/</kbd>
 
-### Reference Filters (e.g., #<%= issue.iid %>)
+### Reference Filters (e.g., <%= issue.to_reference %>)
 
-References should be parseable even inside _!<%= merge_request.iid %>_ emphasis.
+References should be parseable even inside _<%= merge_request.to_reference %>_ emphasis.
 
 #### UserReferenceFilter
 
 - All: @all
-- User: @<%= user.username %>
-- Group: @<%= group.name %>
-- Ignores invalid: @fake_user
-- Ignored in code: `@<%= user.username %>`
-- Ignored in links: [Link to @<%= user.username %>](#user-link)
+- User: <%= user.to_reference %>
+- Group: <%= group.to_reference %>
+- Ignores invalid: <%= User.reference_prefix %>fake_user
+- Ignored in code: `<%= user.to_reference %>`
+- Ignored in links: [Link to <%= user.to_reference %>](#user-link)
 
 #### IssueReferenceFilter
 
-- Issue: #<%= issue.iid %>
-- Issue in another project: <%= xref %>#<%= xissue.iid %>
-- Ignored in code: `#<%= issue.iid %>`
-- Ignored in links: [Link to #<%= issue.iid %>](#issue-link)
+- Issue: <%= issue.to_reference %>
+- Issue in another project: <%= xissue.to_reference(project) %>
+- Ignored in code: `<%= issue.to_reference %>`
+- Ignored in links: [Link to <%= issue.to_reference %>](#issue-link)
 
 #### MergeRequestReferenceFilter
 
-- Merge request: !<%= merge_request.iid %>
-- Merge request in another project: <%= xref %>!<%= xmerge_request.iid %>
-- Ignored in code: `!<%= merge_request.iid %>`
-- Ignored in links: [Link to !<%= merge_request.iid %>](#merge-request-link)
+- Merge request: <%= merge_request.to_reference %>
+- Merge request in another project: <%= xmerge_request.to_reference(project) %>
+- Ignored in code: `<%= merge_request.to_reference %>`
+- Ignored in links: [Link to <%= merge_request.to_reference %>](#merge-request-link)
 
 #### SnippetReferenceFilter
 
-- Snippet: $<%= snippet.id %>
-- Snippet in another project: <%= xref %>$<%= xsnippet.id %>
-- Ignored in code: `$<%= snippet.id %>`
-- Ignored in links: [Link to $<%= snippet.id %>](#snippet-link)
+- Snippet: <%= snippet.to_reference %>
+- Snippet in another project: <%= xsnippet.to_reference(project) %>
+- Ignored in code: `<%= snippet.to_reference %>`
+- Ignored in links: [Link to <%= snippet.to_reference %>](#snippet-link)
 
 #### CommitRangeReferenceFilter
 
-- Range: <%= commit_range %>
-- Range in another project: <%= xref %>@<%= xcommit_range %>
-- Ignored in code: `<%= commit_range %>`
-- Ignored in links: [Link to <%= commit_range %>](#commit-range-link)
+- Range: <%= commit_range.to_reference %>
+- Range in another project: <%= xcommit_range.to_reference(project) %>
+- Ignored in code: `<%= commit_range.to_reference %>`
+- Ignored in links: [Link to <%= commit_range.to_reference %>](#commit-range-link)
 
 #### CommitReferenceFilter
 
-- Commit: <%= commit.id %>
-- Commit in another project: <%= xref %>@<%= xcommit.id %>
-- Ignored in code: `<%= commit.id %>`
-- Ignored in links: [Link to <%= commit.id %>](#commit-link)
+- Commit: <%= commit.to_reference %>
+- Commit in another project: <%= xcommit.to_reference(project) %>
+- Ignored in code: `<%= commit.to_reference %>`
+- Ignored in links: [Link to <%= commit.to_reference %>](#commit-link)
 
 #### LabelReferenceFilter
 
-- Label by ID: ~<%= simple_label.id %>
-- Label by name: ~<%= simple_label.name %>
-- Label by name in quotes: ~"<%= label.name %>"
-- Ignored in code: `~<%= simple_label.name %>`
-- Ignored in links: [Link to ~<%= simple_label.id %>](#label-link)
+- Label by ID: <%= simple_label.to_reference %>
+- Label by name: <%= Label.reference_prefix %><%= simple_label.name %>
+- Label by name in quotes: <%= label.to_reference(:name) %>
+- Ignored in code: `<%= simple_label.to_reference %>`
+- Ignored in links: [Link to <%= simple_label.to_reference %>](#label-link)
 
 ### Task Lists
 
-- 
GitLab