diff options
| author | Yuichiro MASUI <[email protected]> | 2013-01-07 01:47:48 +0900 |
|---|---|---|
| committer | Yuichiro MASUI <[email protected]> | 2013-01-07 02:58:36 +0900 |
| commit | 280bad605e764d1caf59a3ee21b640e077b63d2f (patch) | |
| tree | ce57fad1d04ace7d51e767d05e85842cd0989210 /test | |
| parent | 85370784a4f91028b79fe3786bb66e035d6261fa (diff) | |
| download | mruby-280bad605e764d1caf59a3ee21b640e077b63d2f.tar.gz mruby-280bad605e764d1caf59a3ee21b640e077b63d2f.zip | |
Run mrbgems test run on isolate mrb_state each rb file.
Can access to current gem's name through GEMNAME from test.
Can change assert library each mrbgems. used spec.test_preload on mrbgem.rake.
assert library should set $ok_test, $ko_test, $kill_test, $asserts.
Diffstat (limited to 'test')
| -rw-r--r-- | test/assert.rb | 30 |
1 files changed, 12 insertions, 18 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) |
