many errors running prawns tests with --fast option
---------------------------------------------------

                 Key: JRUBY-3354
                 URL: http://jira.codehaus.org/browse/JRUBY-3354
             Project: JRuby
          Issue Type: Bug
          Components: Core Classes/Modules
    Affects Versions: JRuby 1.2
         Environment: Mac OS X, Java 1.5, 1.6, and 1.7, JRuby r8964
            Reporter: Stephen Bannasch



Setup the prawn environment:

{code}
jruby -S gem install test-spec pdf-reader mocha
git clone git://github.com/sandal/prawn.git
cd prawn
git submodule init
git submodule update
{code}

Running the tests with plain JRuby (only 1 error):
{code}
jruby -S rake
(in /Users/stephen/dev/ruby/src/gems/prawn.git)
/Users/stephen/dev/ruby/src/jruby.git/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/gempackagetask.rb:13:Warning:
 Gem::manage_gems is deprecated and will be removed on or after March 2009.
/Users/stephen/dev/ruby/src/jruby.git/bin/jruby -Ilib:spec 
"/Users/stephen/dev/ruby/src/jruby.git/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader.rb"
 "spec/annotations_spec.rb" "spec/bounding_box_spec.rb" 
"spec/destinations_spec.rb" "spec/document_spec.rb" "spec/font_spec.rb" 
"spec/graphics_spec.rb" "spec/images_spec.rb" "spec/jpg_spec.rb" 
"spec/measurement_units_spec.rb" "spec/name_tree_spec.rb" 
"spec/pdf_object_spec.rb" "spec/png_spec.rb" "spec/reference_spec.rb" 
"spec/text_spec.rb" 
Prawn specs: Running on Ruby Version: 1.8.6
Loaded suite 
/Users/stephen/dev/ruby/src/jruby.git/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader
Started
....................................E................................................................................................................................................
Finished in 13.016763 seconds.

  1) Error:
test_spec {When ending each page} 003 [should result in a smaller file size 
when compressed](When ending each page):
NoMethodError: undefined method `strip_extended' for nil:NilClass
    ./lib/../vendor/ttfunk/lib/ttfunk/table/name.rb:109:in `parse!'
    ./lib/../vendor/ttfunk/lib/ttfunk/table.rb:20:in `initialize'
    ./lib/../vendor/ttfunk/lib/ttfunk/reader.rb:23:in `parse_from'
    ./lib/../vendor/ttfunk/lib/ttfunk/table.rb:20:in `initialize'
    ./lib/../vendor/ttfunk/lib/ttfunk.rb:70:in `name'
    ./lib/prawn/font/ttf.rb:235:in `embed'
    ./lib/prawn/font/ttf.rb:222:in `register'
    ./lib/prawn/reference.rb:27:in `call'
    ./lib/prawn/reference.rb:27:in `object'
    ./lib/prawn/document/internals.rb:95:in `render_body'
    ./lib/prawn/document/internals.rb:93:in `each'
    ./lib/prawn/document/internals.rb:93:in `render_body'
    ./lib/prawn/document.rb:175:in `render'
    spec/document_spec.rb:103:in `test_spec {When ending each page} 003 [should 
result in a smaller file size when compressed]'
    
/Users/stephen/dev/ruby/src/jruby.git/lib/ruby/gems/1.8/gems/mocha-0.9.4/lib/mocha/test_case_adapter.rb:69:in
 `run'

181 tests, 288 assertions, 0 failures, 1 errors
{code}

Running the tests with --fast JRuby:
{code}
jruby --fast -S rake

181 tests, 60 assertions, 0 failures, 146 errors
{code}


Here are two of the 146 errors:

{code}
(in /Users/stephen/dev/ruby/src/gems/prawn.git)
Prawn specs: Running on Ruby Version: 1.8.6
Loaded suite 
/Users/stephen/dev/ruby/src/jruby.git/lib/ruby/gems/1.8/gems/rake-0.8.3/lib/rake/rake_test_loader
Started
...............................EEE..EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE..EEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEE
Finished in 12.022013 seconds.

  1) Error:
test_spec {When creating multi-page documents} 002 [should provide an accurate 
page_count](When creating multi-page documents):
ArgumentError: wrong number of arguments(1 for 0)
    Thread.java:-2:in `dumpThreads'
    Thread.java:1401:in `getStackTrace'
    RubyException.java:139:in `setBacktraceFrames'
    RaiseException.java:149:in `setException'
    RaiseException.java:70:in `<init>'
    Ruby.java:2884:in `newRaiseException'
    Ruby.java:2636:in `newArgumentError'
    Arity.java:201:in `checkArity'
    JittedMethod.java:243:in `pre'
    JittedMethod.java:143:in `call'
    DefaultMethod.java:147:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    spec.rb:52:in `__file__'
    JittedMethod.java:111:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:70:in `call'
    assertions.rb:494:in `ensure_1$RUBY$__ensure___0'
    assertions.rb:493:in `__file__'
    JittedMethod.java:128:in `call'
    DefaultMethod.java:138:in `call'
    CachingCallSite.java:79:in `callBlock'
    CachingCallSite.java:96:in `callIter'
    assertions.rb:46:in `__file__'
    AbstractScript.java:41:in `__file__'
    JittedMethod.java:162:in `call'
    DefaultMethod.java:156:in `call'
    CachingCallSite.java:119:in `callBlock'
    CachingCallSite.java:136:in `callIter'
    FCallOneArgBlockNode.java:34:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:239:in `call'
    DefaultMethod.java:180:in `call'
    CachingCallSite.java:190:in `call'
    FCallThreeArgNode.java:40:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedMethod.java:163:in `call'
    DefaultMethod.java:144:in `call'
    AliasMethod.java:64:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    CallOneArgNode.java:57:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:206:in `yield'
    BlockBody.java:65:in `call'
    BlockBody.java:71:in `call'
    Block.java:80:in `call'
    RubyProc.java:204:in `call'
    ProcMethod.java:64:in `call'
    DynamicMethod.java:226:in `call'
    RubyClass.java:332:in `finvoke'
    RubyObject.java:1357:in `send'
    org/jruby/RubyObject$i_method_multi$RUBYINVOKER$send.gen:-1:in `call'
    JavaMethod.java:244:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    FCallOneArgNode.java:36:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    RescueNode.java:225:in `executeBody'
    RescueNode.java:147:in `interpretWithJavaExceptions'
    RescueNode.java:110:in `interpret'
    EnsureNode.java:96:in `interpret'
    BeginNode.java:83:in `interpret'
    NewlineNode.java:104:in `interpret'
    EnsureNode.java:96:in `interpret'
    BeginNode.java:83:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:119:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockPassNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:169:in `yield'
    Block.java:100:in `yield'
    RubyArray.java:1565:in `each'
    org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:-1:in `call'
    CachingCallSite.java:79:in `callBlock'
    CachingCallSite.java:86:in `call'
    CallNoArgBlockNode.java:64:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockPassNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:169:in `yield'
    Block.java:100:in `yield'
    RubyArray.java:1565:in `each'
    org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:-1:in `call'
    CachingCallSite.java:263:in `cacheAndCall'
    CachingCallSite.java:81:in `callBlock'
    CachingCallSite.java:86:in `call'
    CallNoArgBlockNode.java:64:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    VCallNode.java:85:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedMethod.java:201:in `call'
    DefaultMethod.java:162:in `call'
    CachingCallSite.java:293:in `cacheAndCall'
    CachingCallSite.java:152:in `call'
    CallTwoArgNode.java:59:in `interpret'
    CallNoArgNode.java:61:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    FCallOneArgNode.java:36:in `interpret'
    NewlineNode.java:104:in `interpret'
    IfNode.java:114:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:206:in `yield'
    BlockBody.java:65:in `call'
    BlockBody.java:71:in `call'
    Block.java:80:in `call'
    RubyProc.java:204:in `call'
    RubyProc.java:187:in `call'
    Ruby.java:2435:in `tearDown'
    Main.java:216:in `run'
    Main.java:100:in `run'
    ShellLauncher.java:102:in `run'
    Thread.java:613:in `run'

  2) Error:
test_spec {When beginning each new page Background template feature} 001 
[should place a background image if it is in options block](When beginning each 
new page       Background template feature):
ArgumentError: wrong number of arguments(1 for 0)
    Thread.java:-2:in `dumpThreads'
    Thread.java:1401:in `getStackTrace'
    RubyException.java:139:in `setBacktraceFrames'
    RaiseException.java:149:in `setException'
    RaiseException.java:70:in `<init>'
    Ruby.java:2884:in `newRaiseException'
    Ruby.java:2636:in `newArgumentError'
    Arity.java:201:in `checkArity'
    JittedMethod.java:243:in `pre'
    JittedMethod.java:143:in `call'
    DefaultMethod.java:147:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    spec.rb:52:in `__file__'
    JittedMethod.java:111:in `call'
    DefaultMethod.java:129:in `call'
    CachingCallSite.java:70:in `call'
    assertions.rb:494:in `ensure_1$RUBY$__ensure___0'
    assertions.rb:493:in `__file__'
    JittedMethod.java:128:in `call'
    DefaultMethod.java:138:in `call'
    CachingCallSite.java:79:in `callBlock'
    CachingCallSite.java:96:in `callIter'
    assertions.rb:46:in `__file__'
    AbstractScript.java:41:in `__file__'
    JittedMethod.java:162:in `call'
    DefaultMethod.java:156:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:136:in `callIter'
    assertions.rb:83:in `__file__'
    AbstractScript.java:49:in `__file__'
    JittedMethod.java:213:in `call'
    DefaultMethod.java:180:in `call'
    CachingCallSite.java:313:in `cacheAndCall'
    CachingCallSite.java:192:in `call'
    spec.rb:88:in `__file__'
    JittedMethod.java:145:in `call'
    DefaultMethod.java:144:in `call'
    AliasMethod.java:64:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    CallOneArgNode.java:57:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:206:in `yield'
    BlockBody.java:65:in `call'
    BlockBody.java:71:in `call'
    Block.java:80:in `call'
    RubyProc.java:204:in `call'
    ProcMethod.java:64:in `call'
    DynamicMethod.java:226:in `call'
    RubyClass.java:332:in `finvoke'
    RubyObject.java:1357:in `send'
    org/jruby/RubyObject$i_method_multi$RUBYINVOKER$send.gen:-1:in `call'
    JavaMethod.java:244:in `call'
    CachingCallSite.java:273:in `cacheAndCall'
    CachingCallSite.java:112:in `call'
    FCallOneArgNode.java:36:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    RescueNode.java:225:in `executeBody'
    RescueNode.java:147:in `interpretWithJavaExceptions'
    RescueNode.java:110:in `interpret'
    EnsureNode.java:96:in `interpret'
    BeginNode.java:83:in `interpret'
    NewlineNode.java:104:in `interpret'
    EnsureNode.java:96:in `interpret'
    BeginNode.java:83:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockPassNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:169:in `yield'
    Block.java:100:in `yield'
    RubyArray.java:1565:in `each'
    org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:-1:in `call'
    CachingCallSite.java:79:in `callBlock'
    CachingCallSite.java:86:in `call'
    CallNoArgBlockNode.java:64:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockPassNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:169:in `yield'
    Block.java:100:in `yield'
    RubyArray.java:1565:in `each'
    org/jruby/RubyArray$i_method_0_0$RUBYFRAMEDINVOKER$each.gen:-1:in `call'
    CachingCallSite.java:263:in `cacheAndCall'
    CachingCallSite.java:81:in `callBlock'
    CachingCallSite.java:86:in `call'
    CallNoArgBlockNode.java:64:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:182:in `call'
    DefaultMethod.java:153:in `call'
    CachingCallSite.java:283:in `cacheAndCall'
    CachingCallSite.java:121:in `callBlock'
    CachingCallSite.java:126:in `call'
    CallOneArgBlockNode.java:60:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    VCallNode.java:85:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    ReturnNode.java:88:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedMethod.java:201:in `call'
    DefaultMethod.java:162:in `call'
    CachingCallSite.java:293:in `cacheAndCall'
    CachingCallSite.java:152:in `call'
    CallTwoArgNode.java:59:in `interpret'
    CallNoArgNode.java:61:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    NewlineNode.java:104:in `interpret'
    BlockNode.java:71:in `interpret'
    InterpretedMethod.java:125:in `call'
    DefaultMethod.java:126:in `call'
    CachingCallSite.java:253:in `cacheAndCall'
    CachingCallSite.java:72:in `call'
    CallNoArgNode.java:61:in `interpret'
    FCallOneArgNode.java:36:in `interpret'
    NewlineNode.java:104:in `interpret'
    IfNode.java:114:in `interpret'
    NewlineNode.java:104:in `interpret'
    InterpretedBlock.java:218:in `evalBlockBody'
    InterpretedBlock.java:206:in `yield'
    BlockBody.java:65:in `call'
    BlockBody.java:71:in `call'
    Block.java:80:in `call'
    RubyProc.java:204:in `call'
    RubyProc.java:187:in `call'
    Ruby.java:2435:in `tearDown'
    Main.java:216:in `run'
    Main.java:100:in `run'
    ShellLauncher.java:102:in `run'
    Thread.java:613:in `run'
{code}

-- 
This message is automatically generated by JIRA.
-
If you think it was sent incorrectly contact one of the administrators: 
http://jira.codehaus.org/secure/Administrators.jspa
-
For more information on JIRA, see: http://www.atlassian.com/software/jira

        

---------------------------------------------------------------------
To unsubscribe from this list, please visit:

    http://xircles.codehaus.org/manage_email


Reply via email to