ruby-changes:25308
From: kou <ko1@a...>
Date: Sun, 28 Oct 2012 21:20:11 +0900 (JST)
Subject: [ruby-changes:25308] kou:r37360 (trunk): * test/rexml/test_document.rb: Add tests for parsing XML encoded
kou 2012-10-28 21:19:58 +0900 (Sun, 28 Oct 2012) New Revision: 37360 http://svn.ruby-lang.org/cgi-bin/viewvc.cgi?view=rev&revision=37360 Log: * test/rexml/test_document.rb: Add tests for parsing XML encoded by UTF-16 with BOM. Modified files: trunk/ChangeLog trunk/test/rexml/test_document.rb Index: ChangeLog =================================================================== --- ChangeLog (revision 37359) +++ ChangeLog (revision 37360) @@ -1,3 +1,8 @@ +Sun Oct 28 21:18:37 2012 Kouhei Sutou <kou@c...> + + * test/rexml/test_document.rb: Add tests for parsing XML encoded + by UTF-16 with BOM. + Sun Oct 28 19:12:11 2012 Tadayoshi Funaba <tadf@d...> * ext/date/date_parse.c (iso8601_{ext,bas}_time): should not match Index: test/rexml/test_document.rb =================================================================== --- test/rexml/test_document.rb (revision 37359) +++ test/rexml/test_document.rb (revision 37360) @@ -223,4 +223,26 @@ end end end + + class BomTest < self + def test_utf_16le + xml = <<-EOX.encode("UTF-16LE").force_encoding("ASCII-8BIT") +<?xml version="1.0" encoding="UTF-16"?> +<message>Hello world!</message> +EOX + bom = "\ufeff".encode("UTF-16LE").force_encoding("ASCII-8BIT") + document = REXML::Document.new(bom + xml) + assert_equal("UTF-16", document.encoding) + end + + def test_utf_16be + xml = <<-EOX.encode("UTF-16BE").force_encoding("ASCII-8BIT") +<?xml version="1.0" encoding="UTF-16"?> +<message>Hello world!</message> +EOX + bom = "\ufeff".encode("UTF-16BE").force_encoding("ASCII-8BIT") + document = REXML::Document.new(bom + xml) + assert_equal("UTF-16", document.encoding) + end + end end -- ML: ruby-changes@q... Info: http://www.atdot.net/~ko1/quickml/