This project is archived and is in readonly mode.

rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
Reported by Sam Ruby | August 19th, 2010 @ 01:08 AM | in 2.3.10
$ rails -v
Rails 2.3.8
$ ruby -v
ruby 1.9.2p0 (2010-08-18 revision 29036) [x86_64-linux]
$ rails test
      create  
      create  app/controllers
      create  app/helpers
      create  app/models
      create  app/views/layouts
      create  config/environments
      create  config/initializers
      create  config/locales
      create  db
      create  doc
      create  lib
      create  lib/tasks
      create  log
      create  public/images
      create  public/javascripts
      create  public/stylesheets
      create  script/performance
      create  test/fixtures
      create  test/functional
      create  test/integration
      create  test/performance
      create  test/unit
      create  vendor
      create  vendor/plugins
      create  tmp/sessions
      create  tmp/sockets
      create  tmp/cache
      create  tmp/pids
      create  Rakefile
      create  README
      create  app/controllers/application_controller.rb
      create  app/helpers/application_helper.rb
      create  config/database.yml
      create  config/routes.rb
      create  config/locales/en.yml
      create  db/seeds.rb
      create  config/initializers/backtrace_silencers.rb
      create  config/initializers/inflections.rb
      create  config/initializers/mime_types.rb
      create  config/initializers/new_rails_defaults.rb
      create  config/initializers/session_store.rb
      create  config/initializers/cookie_verification_secret.rb
      create  config/environment.rb
      create  config/boot.rb
      create  config/environments/production.rb
      create  config/environments/development.rb
      create  config/environments/test.rb
      create  script/about
      create  script/console
      create  script/dbconsole
      create  script/destroy
      create  script/generate
      create  script/runner
      create  script/server
      create  script/plugin
      create  script/performance/benchmarker
      create  script/performance/profiler
      create  test/test_helper.rb
      create  test/performance/browsing_test.rb
      create  public/404.html
      create  public/422.html
      create  public/500.html
      create  public/index.html
      create  public/favicon.ico
      create  public/robots.txt
      create  public/images/rails.png
      create  public/javascripts/prototype.js
      create  public/javascripts/effects.js
      create  public/javascripts/dragdrop.js
      create  public/javascripts/controls.js
      create  public/javascripts/application.js
      create  doc/README_FOR_APP
      create  log/server.log
      create  log/production.log
      create  log/development.log
      create  log/test.log
$ cd test
$ ruby script/generate scaffold product title:string
      exists  app/models/
      exists  app/controllers/
      exists  app/helpers/
      create  app/views/products
      exists  app/views/layouts/
      exists  test/functional/
      exists  test/unit/
      create  test/unit/helpers/
      exists  public/stylesheets/
      create  app/views/products/index.html.erb
      create  app/views/products/show.html.erb
      create  app/views/products/new.html.erb
      create  app/views/products/edit.html.erb
      create  app/views/layouts/products.html.erb
      create  public/stylesheets/scaffold.css
      create  app/controllers/products_controller.rb
      create  test/functional/products_controller_test.rb
      create  app/helpers/products_helper.rb
      create  test/unit/helpers/products_helper_test.rb
       route  map.resources :products
  dependency  model
      exists    app/models/
      exists    test/unit/
      exists    test/fixtures/
      create    app/models/product.rb
      create    test/unit/product_test.rb
      create    test/fixtures/products.yml
      create    db/migrate
      create    db/migrate/20100818234417_create_products.rb
$ ruby -Itest test/unit/product_test.rb
Loaded suite test/unit/product_test
Started
/home/rubys/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-2.3.8/lib/active_support/testing/setup_and_teardown.rb:26:in `rescue in run': undefined method `name' for #<ProductTest:0x000000033e1d88> (NoMethodError)
    from /home/rubys/.rvm/gems/ruby-1.9.2-p0/gems/activesupport-2.3.8/lib/active_support/testing/setup_and_teardown.rb:33:in `run'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:641:in `block (2 levels) in run_test_suites'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:635:in `each'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:635:in `block in run_test_suites'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:634:in `each'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:634:in `run_test_suites'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:594:in `run'
    from /home/rubys/.rvm/rubies/ruby-1.9.2-p0/lib/ruby/1.9.1/minitest/unit.rb:492:in `block in autorun'
Note: problem goes away with a rake db:test:prepare; but that's not the point, the point is that application programmer errors aren't caught properly with Rails 2.3.x on 1.9.2.
Comments and changes to this ticket
- 
         
- 
         Repository October 4th, 2010 @ 05:35 PM- State changed from new to resolved
 (from [a448e746615cd3f29bf47c0e4a3b4abf2f0a844a]) [#5406 state:resolved] calling the correct method on minitest to obtain the test name http://github.com/rails/rails/commit/a448e746615cd3f29bf47c0e4a3b4a... 
- 
         Repository October 4th, 2010 @ 05:35 PM(from [4a77431b9a9b60a0280cee7e88a5ef5974057015]) [#5406 state:resolved] calling the correct method on minitest to obtain the test name http://github.com/rails/rails/commit/4a77431b9a9b60a0280cee7e88a5ef... 
- 
         Repository October 4th, 2010 @ 05:35 PM(from [ccf228b0276afb8bb00d14f1b861015b1ef5ab76]) [#5406 state:resolved] calling the correct method on minitest to obtain the test name http://github.com/rails/rails/commit/ccf228b0276afb8bb00d14f1b86101... 
- 
         Sam Ruby October 6th, 2010 @ 07:44 PM- State changed from resolved to verified
 With this fix, I no longer see the problem. Thanks! 
- 
         Rohit Arondekar October 7th, 2010 @ 02:53 AM- State changed from verified to resolved
 Sam, I think you meant resolved instead of verified? Verified state is for patches that have been confirmed and ready to commit. 
Create your profile
Help contribute to this project by taking a few moments to create your personal profile. Create your profile »
<h2 style="font-size: 14px">Tickets have moved to Github</h2>
The new ticket tracker is available at <a href="https://github.com/rails/rails/issues">https://github.com/rails/rails/issues</a>
People watching this ticket
Referenced by
- 
         5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [a448e746615cd3f29bf47c0e4a3b4abf2f0a844a])
[#5406 ... 5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [a448e746615cd3f29bf47c0e4a3b4abf2f0a844a])
[#5406 ...
- 
         5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [4a77431b9a9b60a0280cee7e88a5ef5974057015])
[#5406 ... 5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [4a77431b9a9b60a0280cee7e88a5ef5974057015])
[#5406 ...
- 
         5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [ccf228b0276afb8bb00d14f1b861015b1ef5ab76])
[#5406 ... 5406 
          rescue in run': undefined method `name' for #<ProductTest:> (NoMethodError)
        (from [ccf228b0276afb8bb00d14f1b861015b1ef5ab76])
[#5406 ...
 Jeremy Kemper
      Jeremy Kemper
 Rohit Arondekar
      Rohit Arondekar
 Sam Ruby
      Sam Ruby