From 750a639eab6e0c5615cd7651c1ab4215a8247ef7 Mon Sep 17 00:00:00 2001 From: Masaki Muranaka Date: Thu, 21 Jun 2012 11:43:03 +0900 Subject: Add test for Array#to_s and Array#inspect. --- test/t/array.rb | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/test/t/array.rb b/test/t/array.rb index 1cfe02af7..3f441c1cc 100644 --- a/test/t/array.rb +++ b/test/t/array.rb @@ -234,4 +234,12 @@ assert('Array#unshift', '15.2.12.5.30') do a == [1,2,3] and b == [1,2,3] end +assert('Array#to_s', '15.2.12.5.31') do + a = [2, 3, 4, 5] + r1 = a.to_s + r2 = a.inspect + + r1 == r2 and r1 == "[2, 3, 4, 5]" +end + # Not ISO specified -- cgit v1.2.3 From 0c5b704de355d021f73af72ff4050485fe4203ec Mon Sep 17 00:00:00 2001 From: Masaki Muranaka Date: Thu, 21 Jun 2012 11:45:55 +0900 Subject: Remove strlen(). We can use sizeof() of char array because sizeof(char) is always 1 (ISO C99). --- src/array.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/src/array.c b/src/array.c index 3b42abc74..ca111bc0e 100644 --- a/src/array.c +++ b/src/array.c @@ -880,9 +880,9 @@ inspect_ary(mrb_state *mrb, mrb_value ary, mrb_value list) { int i; mrb_value s, arystr; - char *head = "["; - char *sep = ", "; - char *tail = "]"; + char head[] = { '[' }; + char sep[] = { ',', ' ' }; + char tail[] = { ']' }; /* check recursive */ for(i=0; i 0) { - mrb_str_buf_cat(mrb, arystr, sep, strlen(sep)); + mrb_str_buf_cat(mrb, arystr, sep, sizeof(sep)); } if (mrb_type(RARRAY_PTR(ary)[i]) == MRB_TT_ARRAY) { s = inspect_ary(mrb, RARRAY_PTR(ary)[i], list); @@ -911,7 +911,7 @@ inspect_ary(mrb_state *mrb, mrb_value ary, mrb_value list) mrb_gc_arena_restore(mrb, ai); } - mrb_str_buf_cat(mrb, arystr, tail, strlen(tail)); + mrb_str_buf_cat(mrb, arystr, tail, sizeof(tail)); mrb_ary_pop(mrb, list); return arystr; -- cgit v1.2.3