summaryrefslogtreecommitdiff
path: root/test/webrick/test_htmlutils.rb
blob: ae1b8efa954a58a2ccbeb268b9041cd4a49cabd3 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
# frozen_string_literal: false
require "test/unit"
require "webrick/htmlutils"

class TestWEBrickHTMLUtils < Test::Unit::TestCase
  include WEBrick::HTMLUtils

  def test_escape
    assert_equal("foo", escape("foo"))
    assert_equal("foo bar", escape("foo bar"))
    assert_equal("foo&amp;bar", escape("foo&bar"))
    assert_equal("foo&quot;bar", escape("foo\"bar"))
    assert_equal("foo&gt;bar", escape("foo>bar"))
    assert_equal("foo&lt;bar", escape("foo<bar"))
    assert_equal("\u{3053 3093 306B 3061 306F}", escape("\u{3053 3093 306B 3061 306F}"))
    bug8425 = '[Bug #8425] [ruby-core:55052]'
    assert_nothing_raised(ArgumentError, Encoding::CompatibilityError, bug8425) {
      assert_equal("\u{3053 3093 306B}\xff&lt;", escape("\u{3053 3093 306B}\xff<"))
    }
  end
end