redding / assert

Assertion style testing framework.
https://github.com/redding/assert
MIT License
10 stars 1 forks source link

test tasks fail on a project not using bundler #65

Closed jbgo closed 13 years ago

jbgo commented 13 years ago

I get the following error when running rake test on a project using assert without bundler.

$ rake test
/Users/jordan/.rvm/rubies/ree-1.8.7-2011.03/bin/ruby "/Users/jordan/.rvm/gems/ree-1.8.7-2011.03/gems/rake-0.9.2/lib/rake/rake_test_loader.rb" "test/some_test.rb"
/Users/jordan/.rvm/gems/ree-1.8.7-2011.03/gems/rake-0.9.2/lib/rake/rake_test_loader.rb:1:in `require': no such file to load -- rake (LoadError)
    from /Users/jordan/.rvm/gems/ree-1.8.7-2011.03/gems/rake-0.9.2/lib/rake/rake_test_loader.rb:1
rake aborted!
Command failed with status (1): [/Users/jordan/.rvm/rubies/ree-1.8.7-2011.0...]

It appears that rubygems is not available in the ruby subprocess, so rake/rake_test_loader.rb cannot require 'rake'. If I pass the -rrubygems option to the ruby command, I can run my tests just fine.

$ /Users/jordan/.rvm/rubies/ree-1.8.7-2011.03/bin/ruby -rrubygems "/Users/jordan/.rvm/gems/ree-1.8.7-2011.03/gems/rake-0.9.2/lib/rake/rake_test_loader.rb" "test/some_test.rb"

Just to be complete, here are the two files that make up my project:

Rakefile

require 'assert/rake_tasks'
Assert::RakeTasks.for(:test)

test/some_test.rb

require 'assert'

class SomeTest < Assert::Context
  def test_exception
    raise NotImplementedError, "This is not implemented foo!"
  end
end
kellyredding commented 13 years ago

fixed in pull request #70 (and really with something in pull request #71 too).