summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/url_builder_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/lib/gitlab/url_builder_spec.rb')
-rw-r--r--spec/lib/gitlab/url_builder_spec.rb32
1 files changed, 32 insertions, 0 deletions
diff --git a/spec/lib/gitlab/url_builder_spec.rb b/spec/lib/gitlab/url_builder_spec.rb
index 66826bcb3b1..e91d17bfbe8 100644
--- a/spec/lib/gitlab/url_builder_spec.rb
+++ b/spec/lib/gitlab/url_builder_spec.rb
@@ -96,6 +96,38 @@ describe Gitlab::UrlBuilder do
end
end
+ context 'when passing a Wiki' do
+ let(:wiki) { build_stubbed(:project_wiki) }
+
+ describe '#wiki_url' do
+ it 'uses the default collection action' do
+ url = subject.wiki_url(wiki)
+
+ expect(url).to eq "#{Gitlab.config.gitlab.url}/#{wiki.project.full_path}/-/wikis/home"
+ end
+
+ it 'supports a custom collection action' do
+ url = subject.wiki_url(wiki, action: :pages)
+
+ expect(url).to eq "#{Gitlab.config.gitlab.url}/#{wiki.project.full_path}/-/wikis/pages"
+ end
+ end
+
+ describe '#wiki_page_url' do
+ it 'uses the default member action' do
+ url = subject.wiki_page_url(wiki, 'foo')
+
+ expect(url).to eq "#{Gitlab.config.gitlab.url}/#{wiki.project.full_path}/-/wikis/foo"
+ end
+
+ it 'supports a custom member action' do
+ url = subject.wiki_page_url(wiki, 'foo', action: :edit)
+
+ expect(url).to eq "#{Gitlab.config.gitlab.url}/#{wiki.project.full_path}/-/wikis/foo/edit"
+ end
+ end
+ end
+
context 'when passing a DesignManagement::Design' do
let(:design) { build_stubbed(:design) }