summaryrefslogtreecommitdiff
path: root/spec/lib/gitlab/other_markup_spec.rb
blob: b5cf5b0999d36397080b78aefca1b95a78b618a0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# frozen_string_literal: true

require 'spec_helper'

describe Gitlab::OtherMarkup do
  let(:context) { {} }

  context "XSS Checks" do
    links = {
      'links' => {
        file: 'file.rdoc',
        input: 'XSS[JaVaScriPt:alert(1)]',
        output: "\n" + '<p><a>XSS</a></p>' + "\n"
      }
    }
    links.each do |name, data|
      it "does not convert dangerous #{name} into HTML" do
        expect(render(data[:file], data[:input], context)).to eq(data[:output])
      end
    end
  end

  def render(*args)
    described_class.render(*args)
  end
end