summaryrefslogtreecommitdiffhomepage
path: root/mrbgems/mruby-string-ext/test/string.rb
diff options
context:
space:
mode:
Diffstat (limited to 'mrbgems/mruby-string-ext/test/string.rb')
-rw-r--r--mrbgems/mruby-string-ext/test/string.rb62
1 files changed, 54 insertions, 8 deletions
diff --git a/mrbgems/mruby-string-ext/test/string.rb b/mrbgems/mruby-string-ext/test/string.rb
index 2bb32cef3..90bb43c65 100644
--- a/mrbgems/mruby-string-ext/test/string.rb
+++ b/mrbgems/mruby-string-ext/test/string.rb
@@ -20,8 +20,7 @@ assert('String#dump') do
end
assert('String#strip') do
- s = " abc "
- s.strip
+ s = " abc "
"".strip == "" and " \t\r\n\f\v".strip == "" and
"\0a\0".strip == "\0a" and
"abc".strip == "abc" and
@@ -74,8 +73,8 @@ assert('String#rstrip!') do
end
assert('String#swapcase') do
- assert_equal "Hello".swapcase, "hELLO"
- assert_equal "cYbEr_PuNk11".swapcase, "CyBeR_pUnK11"
+ assert_equal "hELLO", "Hello".swapcase
+ assert_equal "CyBeR_pUnK11", "cYbEr_PuNk11".swapcase
end
assert('String#swapcase!') do
@@ -95,18 +94,65 @@ assert('String#concat') do
end
assert('String#casecmp') do
- assert_equal "abcdef".casecmp("abcde"), 1
- assert_equal "aBcDeF".casecmp("abcdef"), 0
- assert_equal "abcdef".casecmp("abcdefg"),-1
- assert_equal "abcdef".casecmp("ABCDEF"), 0
+ assert_equal 1, "abcdef".casecmp("abcde")
+ assert_equal 0, "aBcDeF".casecmp("abcdef")
+ assert_equal(-1, "abcdef".casecmp("abcdefg"))
+ assert_equal 0, "abcdef".casecmp("ABCDEF")
end
assert('String#start_with?') do
assert_true "hello".start_with?("heaven", "hell")
assert_true !"hello".start_with?("heaven", "paradise")
+ assert_true !"h".start_with?("heaven", "hell")
+ assert_raise TypeError do "hello".start_with?(true) end
end
assert('String#end_with?') do
assert_true "string".end_with?("ing", "mng")
assert_true !"string".end_with?("str", "tri")
+ assert_true !"ng".end_with?("ing", "mng")
+ assert_raise TypeError do "hello".end_with?(true) end
+end
+
+assert('String#partition') do
+ assert_equal ["a", "x", "axa"], "axaxa".partition("x")
+ assert_equal ["aaaaa", "", ""], "aaaaa".partition("x")
+ assert_equal ["", "", "aaaaa"], "aaaaa".partition("")
+ assert_equal ["", "a", "aaaa"], "aaaaa".partition("a")
+ assert_equal ["aaaa", "b", ""], "aaaab".partition("b")
+ assert_equal ["", "b", "aaaa"], "baaaa".partition("b")
+ assert_equal ["", "", ""], "".partition("a")
+end
+
+assert('String#rpartition') do
+ assert_equal ["axa", "x", "a"], "axaxa".rpartition("x")
+ assert_equal ["", "", "aaaaa"], "aaaaa".rpartition("x")
+ assert_equal ["aaaaa", "", ""], "aaaaa".rpartition("")
+ assert_equal ["aaaa", "a", ""], "aaaaa".rpartition("a")
+ assert_equal ["aaaa", "b", ""], "aaaab".rpartition("b")
+ assert_equal ["", "b", "aaaa"], "baaaa".rpartition("b")
+ assert_equal ["", "", ""], "".rpartition("a")
+end
+
+assert('String#hex') do
+ assert_equal 16, "10".hex
+ assert_equal 255, "ff".hex
+ assert_equal 16, "0x10".hex
+ assert_equal (-16), "-0x10".hex
+ assert_equal 0, "xyz".hex
+ assert_equal 16, "10z".hex
+ assert_equal 16, "1_0".hex
+ assert_equal 0, "".hex
+end
+
+assert('String#oct') do
+ assert_equal 8, "10".oct
+ assert_equal 7, "7".oct
+ assert_equal 0, "8".oct
+ assert_equal 0, "9".oct
+ assert_equal 0, "xyz".oct
+ assert_equal 8, "10z".oct
+ assert_equal 8, "1_0".oct
+ assert_equal 8, "010".oct
+ assert_equal (-8), "-10".oct
end