turn-project / turn Goto Github PK
View Code? Open in Web Editor NEWTurn provides a set of alternative runners for MiniTest, both colorful and informative.
Home Page: https://rubygems.org/gems/turn
License: MIT License
Turn provides a set of alternative runners for MiniTest, both colorful and informative.
Home Page: https://rubygems.org/gems/turn
License: MIT License
I don't really know where to report this.
The short version is that under Rails 3.1.0, using mintiest for testing, and running 'bundle exec autotest' and:
with 0.8.2 - I get a nicely colored display
with 0.8.3 - I get a monochrome display which is doubled. By 'doubled' I mean that it runs the tests, displaying
the output and then redisplays the output. Always monochrome.
I traced it down to 'colorize?' and the test '$stdout.tty?' - which returns 'false'. [all the other tests return a true value]
Have no idea if this is a turn, Rails, rails test, mintiest or ZenTest problem.
Oh - BTW - I'm running on a MacBook 17, running OSX 10.7.2.
I have turn 0.8.3 installed, but turn --version
outputs 0.9.0
. Here is the guilty commit made back in August, before 0.8.3 was released - presumably someone changed their mind about what the next version number would be, and forgot to fix this.
@trans, you defo should take a look at falling tests before release.
Possible gotcha when Turn uses "ruby -Ilib bin/turn -" both in the tests and in the isolated test runners. I just discovered that the "-" doesn't get removed but is passed along as the first argument to the command --at least that's what is happening to me on another project, so I assume it will be happening to turn too. If it is, turn seems to me handling it gracefully at this point, but just in case it might be a good idea to shift off any leading "-" in ARGV right off the bat.
When I use custom assertions, I only see the backtrace point to the place where the the assertion is defined, not where it is used. Simple example is here: http://gist.github.com/256065
When I run it, I see this: http://gist.github.com/256066
So the backtrace part pointing to where the assertion is called is missing. This makes it very difficult to track the source of the failure, especially when there is lot of tests.
I'd like to use turn as my global test runner (i.e. the runner I set in my global .test-unit.yml file), but it doesn't appear that turn registers itself as a runner via AutoRunner.register_runner.
With turn 0.8.3 and Ruby 1.9.3, if I run turn --trace my_test.rb
, failures still only show a single error line rather than the full stack trace. I read issue #33 and it led me to believe that --trace
should now work with every runner, but unfortunately this is not the case. I tried -P
, -D
, -T
, and none of them gave a full trace when combined with --trace
. The only one which did was -C
but of course this doesn't work with non-interactive test runs. I'm happy to help debug the issue ...
BTW I'm using minitest - I deinstalled test-unit and also tried with -m
to make sure; neither made any difference.
diff --git a/lib/turn/controller.rb b/lib/turn/controller.rb
index cf35289..eb6a2d6 100644
--- a/lib/turn/controller.rb
+++ b/lib/turn/controller.rb
@@ -114,7 +114,7 @@ module Turn
def files
@files ||= (
- fs = tests.map do |t|
+ fs = Array(tests).map do |t|
File.directory?(t) ? Dir[File.join(t, '**', '*')] : Dir[t]
end
fs = fs.flatten.reject{ |f| File.directory?(f) }
fixes
ruby-1.9.2-p136/gems/turn-0.8.1/lib/turn/controller.rb:117:in `files': undefined method `map' for "test/**/{test,}*{,test}":String (NoMethodError)
from ruby-1.9.2-p136/gems/turn-0.8.1/lib/turn/controller.rb:132:in `start'
from ruby-1.9.2-p136/gems/turn-0.8.1/lib/turn/command.rb:199:in `main'
from ruby-1.9.2-p136/gems/turn-0.8.1/lib/turn/command.rb:37:in `main'
from ruby-1.9.2-p136/gems/turn-0.8.1/bin/turn:3:in `<top (required)>'
from ruby-1.9.2-p136/bin/turn:19:in `load'
from ruby-1.9.2-p136/bin/turn:19:in `<main>'
Not really an issue, more of a question.
Would it be possible to change the color of the dashes to green when all tests pass?
http://cl.ly/1x2p3a2f321o183u0A2E
Thank you
Hey guys,
Recently a MiniTest user reported a failure using MiniTest::Spec with turn. Here's a minimal testcase to demonstrate the problem:
gem 'minitest'
require 'minitest/autorun'
require 'turn'
describe String do
before do
@string = String.new
end
it 'is empty' do
@string.must_be :empty?
end
end
Running that results in this output:
pete@balloon /tmp $ ruby minitest_and_turn.rb
Loaded suite minitest_and_turn
Started
String:
ERROR test_0001_is_empty (0.00s)
NoMethodError: undefined method `empty?' for nil:NilClass
(eval):6:in `must_be'
Finished in 0.001434 seconds.
1 tests, 0 assertions, 0 failures, 1 errors, 0 skips
The good news is that the unreleased git master version of turn works with the most recent MiniTest. Is there an ETA on a new release?
rubies/ruby-1.8.7-p330/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `gem_original_require': no such file to load -- /Users/test/code/beefcake/test/buffer_decode_test.rbc (LoadError)
from rubies/ruby-1.8.7-p330/lib/ruby/site_ruby/1.8/rubygems/custom_require.rb:29:in `require'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/runners/testrunner.rb:28:in `initialize'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/runners/testrunner.rb:28:in `each'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/runners/testrunner.rb:28:in `initialize'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/controller.rb:137:in `new'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/controller.rb:137:in `start'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/command.rb:199:in `main'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/lib/turn/command.rb:37:in `main'
from gems/ruby-1.8.7-p330/gems/turn-0.8.1/bin/turn:3
from gems/ruby-1.8.7-p330/bin/turn:19:in `load'
from gems/ruby-1.8.7-p330/bin/turn:19
I've been working getting our integration tests to run using Test::Unit, Capybara, Spork, and Guard. We've been using Turn and love the output when running tests.
But it takes us 15 seconds (on a patched ruby 1.9.3) just to boot Rails, so Spork really helps cut down on that testing time.
Below you can see the three cases. We know that each of Spork and turn are working when run without the other being turned on, but when you enable both of them, the tests don't actually run. I have even made test that purposely fails, but it still shows "pass: 0, fail: 0, error: 0 total: 0 tests with 0 assertions in 0.004036 seconds" on one that should most definitely fail. Even tests that should be throwing exceptions are not.
If you could point me in the right direction on what I would need to do to get the two tool to work together, I would love to work on this for you.
###############################################################
# Turn : false
# Spork : true
###############################################################
bash$ testdrb -Itest test/integration/nurse_notes_test.rb
Loaded suite NurseNotesTest
Started
Finished in 4.351769 seconds.
2 tests, 3 assertions, 0 failures, 0 errors, 0 pendings, 0 omissions, 0 notifications
0% passed
0.46 tests/s, 0.69 assertions/s
###############################################################
# Turn : true
# Spork : false
###############################################################
bash$ ruby -Itest test/integration/nurse_notes_test.rb
LOADED SUITE test,test/integration,test/support,test/unit
ActionController::TestCase
ActionDispatch::IntegrationTest
ActiveRecord::TestCase
ActiveSupport::TestCase
NurseNotesTest
test_nurse_note_has_show PASS
test_nurse_note_has_summary PASS
Test::Unit::TestCase
==============================================================================
pass: 2, fail: 0, error: 0
total: 2 tests with 3 assertions in 2.797512 seconds
==============================================================================
###############################################################
# Turn : true
# Spork : true
###############################################################
bash$ testdrb -Itest test/integration/nurse_notes_test.rb
LOADED SUITE test/integration
==============================================================================
pass: 0, fail: 0, error: 0
total: 0 tests with 0 assertions in 0.004036 seconds
==============================================================================
1b1655c adds a -n
option for selecting tests by name like testrb
.
I also have a tiny bullshit patch.
Great project. Thanks!
When referencing the method :skip using the latest versions of minitest, turn, and mocha an ArgumentError is thrown (from inside mocha, but does not occur when turn is disabled). Here are the gems used
gem 'rails', '3.0.10'
gem 'mocha', '0.10.0'
gem 'turn', '0.8.3'
gem 'minitest', "2.6.2"
Here is the error that is produced:
wrong number of arguments (0 for 1)
STDERR:
Exception `ArgumentError' at /Users/dave/.rvm/gems/ruby-1.9.2-p290@laika/gems/mocha-0.10.0/lib/mocha/integration/mini_test/version_230_to_251.rb:36:in `rescue in run'
/Users/dave/.rvm/gems/ruby-1.9.2-p290@laika/gems/mocha-0.10.0/lib/mocha/integration/mini_test/version_230_to_251.rb:47:in `run'
/Users/dave/.rvm/gems/ruby-1.9.2-p290@laika/gems/activesupport-3.0.10/lib/active_support/testing/setup_and_teardown.rb:35:in `block in run'
/Users/dave/.rvm/gems/ruby-1.9.2-p290@laika/gems/activesupport-3.0.10/lib/active_support/callbacks.rb:444:in `_run_setup_callbacks'
/Users/dave/.rvm/gems/ruby-1.9.2-p290@laika/gems/activesupport-3.0.10/lib/active_support/testing/setup_and_teardown.rb:34:in `run'
When turn is removed from the bundle, the behavior reverts to the normal "S" being output along with the the skip error message.
As of turn v. 0.8.3, there is an undocumented dependency on MiniTest.
It appears this stems from some recent additions to support minitest.
I don't particularly care for all the extra output from MiniTest, so if this could be optional or sensing that would be the preferred fix.
Hi.
My test raises an exception, due to active record, but the backtrace contains only one line so I can't see where it has been raised. Is there a way to expand the backtrace output?
A reminder for gemcutter release.
Here's a case to reproduce (sorry, no Gemfile, but the versions of gems/etc (current) are all present):
And here's the issue upstream with mocha
:
tl;dr Something when turn
is required prevents mocha
's teardown running, so wide-reaching stubs, expectations and mocks aren't cleaned up. Not normally a problem when using instance-level stubs/expectations; but with any_instance
for example, it makes problems.
Under disperate load order conditions (that is :test_unit, :turn, :mocha
vs. :test_unit, :mocha, :turn
) - the former passes all tests, but the word PASS
is absent.
There's a lot more discussion and examples at the mocha issue, the issue remains open in case that a cooperative fix requires some modification to mocha
.
Apologies that the test-case isn't quite the simplest it could be, hopefully it's simple enough to follow.
If I put gem 'turn'
in my Gemfile
and then run a task e.g. rake routes
, then I see this at the bottom of the list of routes:
LOADED SUITE test,test/functional,test/unit,test/unit/helpers,test/performance
MiniTest::Spec
==============================================================================
pass: 0, fail: 0, error: 0
total: 0 tests with 0 assertions in 0.001157612 seconds
==============================================================================
The workaround is instead to use
gem 'turn', :require => false
If this behaviour is intentional, it should be documented; otherwise it should be fixed.
Turn fails with minitest, ruby 1.9.2. Trying to require 'test/unit/ui/console/testrunner', which doesn't exist with minitest (only with test/unit).
test/unit (the gem) now supports a number of new count types, like skip and omit. The turn runner needs to track those too. Need to further consider how mintest and test/unit will coexist with regards to this.
When fed the following test file:
class FooTest < MiniTest::Unit::TestCase
def test_t1
assert true
end
end
class BarTest < MiniTest::Unit::TestCase
def test_t2
assert true
assert true
end
end
turn outputs:
2 tests, 5 assertions, 0 failures, 0 errors
I guess turn should reset some local counter, but it does not. On running the above, turn counts 2 assertions in test_t2, then it counts 3 (2+1) instead of 1 in test_t1, adding up to 5.
I get the following error when trying to run turn on a rails test suite with factory girl, on ruby 1.9.2, OSX, using the new turn 0.8.0 gem:
$ turn --solo -Ilib test/
LOADED SUITE
test/factories/activities.rb
/Users/francis/.rvm/rubies/ruby-1.9.2-preview3/lib/ruby/1.9.1/syck.rb:135:in load': instance of IO needed (TypeError) from /Users/francis/.rvm/rubies/ruby-1.9.2-preview3/lib/ruby/1.9.1/syck.rb:135:in
load'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/runners/isorunner.rb:90:in block in test_loop_runner' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/components/suite.rb:72:in
each'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/components/suite.rb:72:in each' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/runners/isorunner.rb:56:in
each_with_index'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/runners/isorunner.rb:56:in test_loop_runner' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/runners/isorunner.rb:43:in
start'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/controller.rb:139:in start' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/command.rb:199:in
main'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/lib/turn/command.rb:37:in main' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/gems/turn-0.8.0/bin/turn:3:in
<top (required)>'
from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/bin/turn:19:in load' from /Users/francis/.rvm/gems/ruby-1.9.2-preview3/bin/turn:19:in
The (command line) runners are mature enough now that the autorunners can be re-written to use them.
It will take some doing, but the pay off is there will no longer be two sets of runners to maintain.
I recently pushed a "first small step toward MiniTest support". First let me apologize for pushing that directly to master. That was an accident. I thought I was pushing to my own fork. But maybe it's for the best b/c at some point this issue has to be addressed, and now is a good a time as any.
I've been giving the issue some serious thought, I've become concerned that supporting both Test::Unit and MiniTest with the same code base will prove increasingly difficult. Already Test::Unit 2 has a number of new counts (omitted, pending, etc.). So not only will the runners need an adapter, but each reporter will also have to account for these distinctions.
So I am thinking that Turn might do well to split into two projects, one for Test::Unit and one for MiniTest. I think this is the best solution b/c it allows each project to evolve as needs be along with the underlying test framework they each augment. Of course, the two can continue to cross-pollinate.
If I require turn in the Gemfile
group :development, :test do
gem 'turn'
end
And then a random non-test related rake task
vagrant@vagrantup:~/conduit$ rake -n tmp:clear
(in /data/web/conduit/current)
** Invoke tmp:clear (first_time)
** Invoke tmp:sessions:clear (first_time)
** Execute (dry run) tmp:sessions:clear
** Invoke tmp:cache:clear (first_time)
** Execute (dry run) tmp:cache:clear
** Invoke tmp:sockets:clear (first_time)
** Execute (dry run) tmp:sockets:clear
** Execute (dry run) tmp:clear
=========================================================================
pass: 0, fail: 0, error: 0
total: 0 tests with 0 assertions in 0.000239 seconds
=========================================================================
It is a valuable piece of information that you normally get with minitest that disappears when I include turn.
Patch: http://github.com/defunkt/turn/commit/proper_exit_code
Before and after: https://gist.github.com/18604d36fa844b8b835d
$ turn -h
/Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require': no such file to load -- facets/progressbar (LoadError)
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/chris/.gems/gems/turn-0.6.2/lib/turn/reporters/progress_reporter.rb:2
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/chris/.gems/gems/turn-0.6.2/lib/turn/controller.rb:10
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `gem_original_require'
from /Library/Ruby/Site/1.8/rubygems/custom_require.rb:31:in `require'
from /Users/chris/.gems/gems/turn-0.6.2/lib/turn/command.rb:25
from /Users/chris/.gems/gems/turn-0.6.2/bin/turn:3:in `load'
from /Users/chris/.gems/gems/turn-0.6.2/bin/turn:3
from /Users/chris/.gems/bin/turn:19:in `load'
from /Users/chris/.gems/bin/turn:19
I have facets installed:
$ gem list facets
*** LOCAL GEMS ***
facets (2.8.0)
Hi Tim. I've recently spun off facets/ansicode.rb as a stand-alone project --with some cool additional ANSI-related classes (gem install ansi). So I just pushed the changes needed to swap out Turn's color support for the 'ansi' project. Please give it a whirl and if everything checks out, go ahead and release it at your discretion.
In a Rails project that uses Shoulda (in case that matters), I required turn
using the recommended begin
... rescue LoadError
scheme. I then ran autotest -f
. After changing a file and saving it, autotest
did indeed run the related test file, but it then continued to run it in a loop without end -- even when I saved another file.
My apologies for not tracking down the issue and patching it myself.
the standard test/unit runner has the option to run only specific testcases with the --testcase (or -t) PATTERN option, which is currently not recognized by turn:
$ turn -t /JsonApi/ functional/locations_controller_test.rb
/usr/bin/turn: invalid option -- t
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/getoptlong.rb:403:in `set_error': invalid option -- t (GetoptLong::InvalidOption)
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/getoptlong.rb:580:in `get_option'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/getoptlong.rb:611:in `each'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/getoptlong.rb:610:in `loop'
from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/getoptlong.rb:610:in `each'
from /Library/Ruby/Gems/1.8/gems/turn-0.7.0/lib/turn/command.rb:62
from /Library/Ruby/Gems/1.8/gems/turn-0.7.0/bin/turn:3:in `load'
from /Library/Ruby/Gems/1.8/gems/turn-0.7.0/bin/turn:3
from /usr/bin/turn:19:in `load'
from /usr/bin/turn:19
require 'turn'
breaks the feature in Ruby where you can do ruby -Itest ./my_test.rb -n test_just_this_one_thing
.
Under the defaults, this would run only the method named test_just_this_one_thing
, with turn
loaded, however it runs all tests, all the time.
The ruby docuemntation for this feature is misleading, or I'm misunderstanding it:
ruby --help
... snip ...
-n assume 'while gets(); ... end' loop around your script
... snip ...
A note further to this is that when using bundler, turn appears to be badly behaved:
gem 'turn', :require => false
should make bundler skip loading this, but it doesn't - turn still loads, even if I do not explicitly require it anywhere. (it's possible, something in Rails is auto-loading it, but I really hope not.
Can there be an option that the output only display failed tests?
Each of my test class has a butt load of tests and that'll be really handy!
Turn 0.7.0
Ruby 1.8.7
Linux
/usr/local/lib/ruby/gems/1.8/gems/turn-0.7.0/lib/turn.rb:12: warning: instance variable @io not initialized use ANSI block notation for future versions
Example
Open3.popen3("turn", *args) do |stdin, stdout, stderr|
stdin.puts text
stdin.close
out = stdout.read.chomp
end
I added an option for displaying normalized method names. So instead of test_some_method_name
the formatter will display some method name PASS
.
Here's the commit: c3fab87052642c234a0e1aed94e37a1084cecf0e
turn does not correctly handle these - would be nice if it did
A fix for it is at:
http://github.com/chetan/turn/commit/a644fcdbd180f632f31ac834a7258d0f4f00949a
I love how Python's nose suppresses STDOUT and only shows it for tests that fail. I've hacked a basic version of that functionality into turn:
http://github.com/defunkt/turn/commit/only_show_stdout_on_fail
One of the features I like about 0.8.2 is it displays the time of each individual test making it easy to locate long running tests and fix them. I definitely prefer that turn 0.8.3 displays the test name before running the test, then follows it with pass/fail. I would just ask that immediately after the pass/fail is the test time. Thank you.
Getting a NameError.
Rails 3.2.1, turn 0.9.3 (from repo), rails-autotest 4.1.0 and 4.1.1, minitest 2.6.2, autotest-fsevent 0.2.7
(color and formatting are back and working)
in test_helper.rb - do NOT have 'require turn/autorun' - but have tried it both ways. Did have Turn.config.ansi = true
Any time any file is changed, entire suite of tests run.
Also, errors dump the entire stack trace - which again defeats pretty printing.
Have reverted to turn 0.8.3.
BTW - I like the PASS/FAIL/SKIP on the left rather than the right because I use really long test names, which makes a
very ragged right edge. If that is configurable, please add a couple of notes to the README
Thanks,
Mike
When running autotest and turn with ruby 1.8.7 the output is all buffered until the end of the test run. This is a little bit annoying. Has anyone experienced this before?
It works fine with ruby 1.9.2 but would like it to work in a similar manner on 1.8.7.
Any suggestions?
Cheers,
Alastair
Because of the nature of how spec assertions are defined in MiniTest (infect_an_assertion), the output for a failed assertion looks like this:
OutputSpec:
FAIL test_0001_output (0.00s)
Expected 1, not 2.
(eval):4:in `must_equal'
Without turn, the output looks like this:
1) Failure:
test_0001_output(OutputSpec) [turn.rb:6]:
Expected 1, not 2.
The line number of the failure would be nice to have in the turn output.
(I'm using mintiest 2.5.1 and turn 0.8.2.)
Both installs of ruby have turn 0.8.2 installed.
When running on 1.9.2 the PASS/FAIL is to the left of the test function, with the individual time to execute to the right of the function. Only the first line of the backtrace is available in this version.
When running on 1.8.7 the PASS/FAIL are right aligned, and there is no individual test execution time. The full backtrace is available in this version.
Ideally I would love to have:
Is it a default that has change that can be toggled by setting a config option or variable? I am not using the turn command line tool so it can't be a command line parameter.
Gems
group :test do
# http://stackoverflow.com/questions/3118866/mocha-mock-carries-to-another-test/4375296#4375296
gem 'mocha', :require => false # required in test_helper.rb at the bottom
gem 'shoulda'
end
Test case
class EventTest < ActiveSupport::TestCase
test "a sample mock" do
mocky = mock(:name => "Steve")
end
test "assert the truth" do
assert true
end
end
Expected output (before using turn):
F.
Finished in 0.187605 seconds.
1) Failure:
test_a_sample_mock(EventTest) [test/unit/event_test.rb:20]:
not all expectations were satisfied
unsatisfied expectations:
- expected exactly once, not yet invoked: #<Mock:0x100ee12a8>.name(any_parameters)
2 tests, 2 assertions, 1 failures, 0 errors, 0 skips
After adding turn:
EventTest:
PASS test_a_sample_mock (0.18s)
PASS test_assert_the_truth (0.01s)
Finished in 0.193767 seconds.
2 tests, 1 assertions, 0 failures, 0 errors, 0 skips
Heh. Where did my failure go? Requiring turn
before shoulda
brings it back but breaks the output:
EventTest:
FAIL test_a_sample_mock (0.18s)
not all expectations were satisfied
unsatisfied expectations:
- expected exactly once, not yet invoked: #<Mock:0x103382aa8>.name(any_parameters)
test/unit/event_test.rb:20:in `block in <class:EventTest>'
test_assert_the_truth (0.01s)
Finished in 0.191906 seconds.
2 tests, 2 assertions, 1 failures, 0 errors, 0 skips
test_the_truth
for example has no PASS
status. Only when I remove mocha (and the mock test) completely does it return. Just adding gem 'mocha', :require => false
was enough to make it disappear, without requiring it anywhere else.
Any ideas?
Failed assertion, no message given.
Assertion at /home/stefan/.rvm/gems/ruby-1.9.3-rc1@sharewise/gems/activesupport-3.1.1/lib/active_support/testing/setup_and_teardown.rb:35:in`block in run'
vs. without turn
1) Failure:
test_find_matching(PromotionTest) [test/unit/promotion_test.rb:22]:
Failed assertion, no message given.
with turn enabled i have no idea which line in the tests caused the issue
without turn I see its line 22 in my test
We use cmd.exe for most of our coding as we do not like to require the use of cygwin or supplementary prompts.
The output is very hard to read:
←[33m ERROR←[0m testPasswordChange (1.59s)
I am also filing a bug report with the ANSI gem, as the fail to detect win32 on my machine as the RUBY_PLATFORM=i386mingw32 and it looks for win32.
Can a flag of some sort be added to support the disabling of colours?
I tried removing ansi because the turn documentation is written such that it should use it if found, and otherwise not. This is the error I get without the ansi gem installed:
C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/dependency.rb:247:in to_specs': Could not find ansi (>= 1.2.2) amongst [builder-3.0.0, commonwatir-1.8.1, firewatir-1.8.1, hoe-2.9.4, minitest-1.6.0, nokogiri-1.4.4.1-x86-mingw32, rake-0.8.7, rd oc-2.5.8, rubygems-update-1.8.5, s4t-utils-1.0.4, turn-0.8.1, user-choices-1.1.6.1, watir-1.8.1, win32-api-1.4.8-x86-mingw32, win32-process-0.6.5, win32console-1.3.0-x86-mingw32, windows-api-0.4.0, windows-pr-1.2.0, xml-simple-1.0.16] (Gem::LoadError) from C:/Ruby192/lib/ruby/site_ruby/1.9.1/rubygems/specification.rb:759:i n
block in activate_dependencies'
Thanks!
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.