debian-mirror-gitlab/spec/lib/banzai/filter/wiki_link_filter_spec.rb

35 lines
1.2 KiB
Ruby
Raw Normal View History

2016-08-24 12:49:21 +05:30
require 'spec_helper'
2017-09-10 17:25:29 +05:30
describe Banzai::Filter::WikiLinkFilter do
2016-08-24 12:49:21 +05:30
include FilterSpecHelper
let(:namespace) { build_stubbed(:namespace, name: "wiki_link_ns") }
2017-09-10 17:25:29 +05:30
let(:project) { build_stubbed(:project, :public, name: "wiki_link_project", namespace: namespace) }
2016-08-24 12:49:21 +05:30
let(:user) { double }
let(:wiki) { ProjectWiki.new(project, user) }
it "doesn't rewrite absolute links" do
filtered_link = filter("<a href='http://example.com:8000/'>Link</a>", project_wiki: wiki).children[0]
2018-03-17 18:26:18 +05:30
2016-08-24 12:49:21 +05:30
expect(filtered_link.attribute('href').value).to eq('http://example.com:8000/')
end
2018-03-17 18:26:18 +05:30
it "doesn't rewrite links to project uploads" do
filtered_link = filter("<a href='/uploads/a.test'>Link</a>", project_wiki: wiki).children[0]
expect(filtered_link.attribute('href').value).to eq('/uploads/a.test')
end
2016-08-24 12:49:21 +05:30
describe "invalid links" do
invalid_links = ["http://:8080", "http://", "http://:8080/path"]
invalid_links.each do |invalid_link|
it "doesn't rewrite invalid invalid_links like #{invalid_link}" do
filtered_link = filter("<a href='#{invalid_link}'>Link</a>", project_wiki: wiki).children[0]
2018-03-17 18:26:18 +05:30
2016-08-24 12:49:21 +05:30
expect(filtered_link.attribute('href').value).to eq(invalid_link)
end
end
end
end