summaryrefslogtreecommitdiff
path: root/spec/ruby/library/cgi/escapeHTML_spec.rb
blob: 421aac5d4ab3293bf63a71c855d4967b1b862c65 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
require_relative '../../spec_helper'
require 'cgi'

describe "CGI.escapeHTML" do
  it "escapes special HTML characters (&\"<>') in the passed argument" do
    CGI.escapeHTML(%[& < > " ']).should == '&amp; &lt; &gt; &quot; &#39;'
  end

  it "escapes invalid encoding" do
    CGI.escapeHTML(%[<\xA4??>]).should == "&lt;\xA4??&gt;"
  end

  it "does not escape any other characters" do
    chars = " !\#$%()*+,-./0123456789:;=?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\\]^_`abcdefghijklmnopqrstuvwxyz{|}~"
    CGI.escapeHTML(chars).should == chars
  end
end