aris
August 20, 2012, 9:10am
1
This is my spec/helper.rb
file:
require 'minitest/autorun'
require 'minitest/spec'
require_relative '../lib/launcher'
class MiniTest::Spec
include MiniTest::Assertions
end
And this is the spec file:
require 'helper'
describe Launcher do
it "should get the stdout" do
out, err = capture_io do
warn "You did a bad thing"
end
err.should =~ /bad/
end
end
But when I run the spec:
± rake spec
/Users/millisami/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec
./spec/launcher_spec.rb -Ispec:lib
F
Failures:
1) Launcher should be a launcher for cloud
Failure/Error: out, err = capture_io do
NoMethodError:
undefined method `capture_io' for
#RSpec::Core::ExampleGroup::Nested_1:0x000001012a4840
# ./spec/launcher_spec.rb:5:in `block (2 levels) in <top
(required)>’
Finished in 0.00044 seconds
1 example, 1 failure
Failed examples:
rspec ./spec/launcher_spec.rb:4 # launcher should be a launcher for
cloud
rake aborted!
/Users/millisami/.rvm/rubies/ruby-1.9.3-p194/bin/ruby -S rspec
./spec/launcher_spec.rb -Ispec:lib failed
Tasks: TOP => spec
But when I do this with the default MiniTest::Unit way, it works?
And why not the spec way?
On Aug 20, 2012, at 00:10 , Milli S. [email protected] wrote:
This is my spec/helper.rb
file:
require ‘minitest/autorun’
require ‘minitest/spec’
require_relative ‘…/lib/launcher’
class MiniTest::Spec
include MiniTest::Assertions
end
This isn’t necessary. In fact, you only need the autorun and launcher
lines.
end
end
I’d start by cleaning up the above. it works for me:
10011 % ruby -Ilib -rminitest/autorun -e ‘describe true do it “works” do
x = capture_io do puts “hi” end; p x end end’
Run options: --seed 27063
Running tests:
[“hi\n”, “”]
.
Finished tests in 0.000760s, 1315.7895 tests/s, 0.0000 assertions/s.
1 tests, 0 assertions, 0 failures, 0 errors, 0 skips
If you still can’t get it to work, please file a bug. This is no the
right forum for minitest support.
Ryan D. wrote in post #1072862:
On Aug 20, 2012, at 00:10 , Milli S. [email protected] wrote:
This is my spec/helper.rb
file:
require ‘minitest/autorun’
require ‘minitest/spec’
require_relative ‘…/lib/launcher’
class MiniTest::Spec
include MiniTest::Assertions
end
This isn’t necessary. In fact, you only need the autorun and launcher
lines.
end
end
I’d start by cleaning up the above. it works for me:
10011 % ruby -Ilib -rminitest/autorun -e ‘describe true do it “works” do
x = capture_io do puts “hi” end; p x end end’
Run options: --seed 27063
Running tests:
[“hi\n”, “”]
.
Finished tests in 0.000760s, 1315.7895 tests/s, 0.0000 assertions/s.
1 tests, 0 assertions, 0 failures, 0 errors, 0 skips
If you still can’t get it to work, please file a bug. This is no the
right forum for minitest support.
Well, it works when I run the spec via ruby spec/...
.
But fails with
rake
.
Actually I’m running into this with the project I’m trying with
Hoe
.
Since you said this is not the place for such issue, I’ve posted
this issue at capture_io of minitest not working with minitest/spec · Issue #30 · seattlerb/hoe · GitHub
Can you take a look into that?
On Aug 20, 2012, at 03:32 , Milli S. [email protected] wrote:
Actually I’m running into this with the project I’m trying with
Hoe
.
Since you said this is not the place for such issue, I’ve posted
this issue at capture_io of minitest not working with minitest/spec · Issue #30 · seattlerb/hoe · GitHub
Can you take a look into that?
Fixed and released! Thanks!