diff options
Diffstat (limited to 'test')
| -rw-r--r-- | test/assert.rb | 30 | ||||
| -rw-r--r-- | test/mrbtest.rake | 4 | ||||
| -rw-r--r-- | test/t/gc.rb | 45 |
3 files changed, 59 insertions, 20 deletions
diff --git a/test/assert.rb b/test/assert.rb index 89e820a00..4fe95de9d 100644 --- a/test/assert.rb +++ b/test/assert.rb @@ -5,14 +5,13 @@ $asserts = [] $test_start = Time.now if Object.const_defined?(:Time) ## -# Print the assertion in a readable way -def print_assertion_string(str, iso) - print(str) - if(iso != '') - print(' [') - print(iso) - print(']') - end +# Create the assertion in a readable way +def assertion_string(err, str, iso=nil, e=nil) + msg = "#{err}#{str}" + msg += " [#{iso}]" if iso && iso != '' + msg += " => #{e.message}" if e + msg += " (mrbgems: #{GEMNAME})" if Object.const_defined?(:GEMNAME) + msg end ## @@ -26,7 +25,7 @@ end def assert(str = 'Assertion failed', iso = '') begin if(!yield) - $asserts.push(['Fail: ', str, iso]) + $asserts.push(assertion_string('Fail: ', str, iso)) $ko_test += 1 print('F') else @@ -34,7 +33,7 @@ def assert(str = 'Assertion failed', iso = '') print('.') end rescue Exception => e - $asserts.push(['Error: ', str, iso, e]) + $asserts.push(assertion_string('Error: ', str, iso, e)) $kill_test += 1 print('X') end @@ -45,14 +44,9 @@ end # which were reported broken. def report() print "\n" - $asserts.each do |err, str, iso, e| - print(err); - print_assertion_string(str, iso) - if e - print(" => ") - print(e.message) - end - print("\n") + + $asserts.each do |msg| + puts msg end $total_test = $ok_test.+($ko_test) diff --git a/test/mrbtest.rake b/test/mrbtest.rake index 1d416df2c..cd560d206 100644 --- a/test/mrbtest.rake +++ b/test/mrbtest.rake @@ -11,7 +11,7 @@ MRuby.each_target do objs = ["#{build_dir}/#{dir}/driver.o", mlib] file exec => objs + gems.map{ |g| g.testlib } + ["#{build_dir}/lib/libmruby.a"] do |t| - link t.name, t.prerequisites, [], gems.map { |g| g.mruby_libs } + link t.name, t.prerequisites, gems.map { |g| g.mruby_ldflags }, gems.map { |g| g.mruby_libs } end file mlib => [clib] @@ -29,4 +29,4 @@ MRuby.each_target do f.puts "}" end end -end
\ No newline at end of file +end diff --git a/test/t/gc.rb b/test/t/gc.rb new file mode 100644 index 000000000..410272797 --- /dev/null +++ b/test/t/gc.rb @@ -0,0 +1,45 @@ +# Not ISO specified + +assert('GC.enable') do + GC.disable == false + GC.enable == true + GC.enable == false +end + +assert('GC.disable') do + begin + GC.disable == false + GC.disable == true + ensure + GC.enable + end +end + +assert('GC.interval_ratio=') do + origin = GC.interval_ratio + begin + (GC.interval_ratio = 150) == 150 + ensure + GC.interval_ratio = origin + end +end + +assert('GC.step_ratio=') do + origin = GC.step_ratio + begin + (GC.step_ratio = 150) == 150 + ensure + GC.step_ratio = origin + end +end + +assert('GC.generational_mode=') do + origin = GC.generational_mode + begin + (GC.generational_mode = false) == false + (GC.generational_mode = true) == true + (GC.generational_mode = true) == true + ensure + GC.generational_mode = origin + end +end |
