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 27
|
assert('Integer#chr') do
assert_equal("A", 65.chr)
assert_equal("B", 0x42.chr)
assert_equal("\xab", 171.chr)
assert_raise(RangeError) { -1.chr }
assert_raise(RangeError) { 256.chr }
assert_equal("A", 65.chr("ASCII-8BIT"))
assert_equal("B", 0x42.chr("BINARY"))
assert_equal("\xab", 171.chr("ascii-8bit"))
assert_raise(RangeError) { -1.chr("binary") }
assert_raise(RangeError) { 256.chr("Ascii-8bit") }
assert_raise(ArgumentError) { 65.chr("ASCII") }
assert_raise(ArgumentError) { 65.chr("ASCII-8BIT", 2) }
assert_raise(TypeError) { 65.chr(:BINARY) }
if __ENCODING__ == "ASCII-8BIT"
assert_raise(ArgumentError) { 65.chr("UTF-8") }
else
assert_equal("A", 65.chr("UTF-8"))
assert_equal("B", 0x42.chr("UTF-8"))
assert_equal("«", 171.chr("utf-8"))
assert_equal("あ", 12354.chr("Utf-8"))
assert_raise(RangeError) { -1.chr("utf-8") }
assert_raise(RangeError) { 0x110000.chr.chr("UTF-8") }
end
end
|