geemus / shindo Goto Github PK
View Code? Open in Web Editor NEWWork with your tests, not against them.
License: MIT License
Work with your tests, not against them.
License: MIT License
I just gave 0.0.9 a shot, and noticed the prompt you get when a test fails... fails if you enter anything except 'c'. Here's the command and backtrace:
$ rake tests
(in /Users/technicalpickles/code/active/jeweler/zomg-shindo)
All dependencies seem to be installed.
/gentoo/usr/bin/ruby18 tests/zomg-shindo_tests.rb
ZomgShindo
- fails
Action? [c,i,q,r,t,#,?]? t
no backtrace available
- fails
/gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:128:in `prompt': wrong number of arguments (0 for 1) (ArgumentError)
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:128:in `prompt'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:188:in `test'
from tests/zomg-shindo_tests.rb:4
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:143:in `instance_eval'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:143:in `tests'
from /gentoo/usr/lib/ruby/gems/1.8/gems/formatador-0.0.4/lib/formatador.rb:78:in `indent'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:143:in `tests'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:32:in `initialize'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:9:in `new'
from /gentoo/usr/lib/ruby/gems/1.8/gems/shindo-0.0.9/lib/shindo.rb:9:in `tests'
from tests/zomg-shindo_tests.rb:3
rake aborted!
Command failed with status (1): [/gentoo/usr/bin/ruby18 tests/zomg-shindo_t...]
(See full trace by running task with --trace)
Recently, during mass rebuild of Fedora packages, Shindo failed to build with following test error:
$ bin/shindo
/builddir/build/BUILD/rubygem-shindo-0.3.6/usr/share/gems/gems/shindo-0.3.6/lib/shindo/bin.rb:65:in `join': No live threads left. Deadlock? from /builddir/build/BUILD/rubygem-shindo-0.3.6/usr/share/gems/gems/shindo-0.3.6/lib/shindo/bin.rb:65:in `run_in_thread'
from /builddir/build/BUILD/rubygem-shindo-0.3.6/usr/share/gems/gems/shindo-0.3.6/lib/shindo/bin.rb:72:in `<top (required)>'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:51:in `require'
from /usr/share/rubygems/rubygems/core_ext/kernel_require.rb:51:in `require'
from bin/shindo:4:in `<main>'
I did some investigation and it seems it is due to updated Rubygems, more precisely due to rubygems/rubygems@c721203. If I revert the commit in RubyGems, the test suite passes once again.
Unfortunately, this issue does not affects just shindo's test suite, but also other test suite. Any help would be appreciated. I am considering to open bug for RubyGems as well, since they should not break anything IMO, but I'd love to hear your feedback first.
Thanks
I am trying to execute and interrupt the execution of excon testsuite and I receive this error:
$ shindo
read should timeout
^C/usr/share/gems/gems/shindo-0.3.8/lib/shindo/bin.rb:3:in `block in <top (required)>': wrong number of arguments (1 for 0) (ArgumentError)
from /usr/share/gems/gems/shindo-0.3.8/lib/shindo/bin.rb:65:in `call'
from /usr/share/gems/gems/shindo-0.3.8/lib/shindo/bin.rb:65:in `join'
from /usr/share/gems/gems/shindo-0.3.8/lib/shindo/bin.rb:65:in `run_in_thread'
from /usr/share/gems/gems/shindo-0.3.8/lib/shindo/bin.rb:72:in `<top (required)>'
from /usr/share/gems/gems/shindo-0.3.8/bin/shindo:5:in `require_relative'
from /usr/share/gems/gems/shindo-0.3.8/bin/shindo:5:in `<top (required)>'
from /usr/bin/shindo:23:in `load'
Wouldn't be better to use proc instead of lambada on line [1] to avoid this issue?
[1] https://github.com/geemus/shindo/blob/master/lib/shindo/bin.rb#L3
Similar to how rspec does it here:
https://github.com/rspec/rspec-core/blob/master/lib/rspec/core/ruby_project.rb
https://github.com/rspec/rspec-core/blob/master/lib/rspec/core/load_path.rb
This would remove the need to monkey with the load path in test_helper, etc, when using shindo.
Please use more realistic examples. Foo, bar, baz, qux don't really tell the reader anything. Looks like an interesting project, but I can't actually evaluate its suitability for any purpose without hunting down some other project that's using it because the README was written with meaningless variable names and contrived examples.
Add basic option parsing.
Hello
On line https://github.com/geemus/shindo/blob/master/lib/shindo.rb#L1 you require Rubygems, however this is considered bad practice by many [1], could you please remove this line?
Vit
[1] http://tomayko.com/writings/require-rubygems-antipattern
Currently there is no easy way to exclude some tests like rspec or minitest. For example, in fog-aws, we want to exclude some tests in debian package, but the only way we could find was to remove those files. lib/shindo/rake just calls shindo command. Would it be possible to support some exclusion patterns? In case fo fog-aws, we had to disable tests that fail with fog-core 2.1.0 and works only with fog-core 2.1.2. We cannot use fog-core 2.1.2 because fog-google is not yet compatible with it.
If a rakefile makes use of Shindo::Rake, something like the following can be seen when running rake -T
with rake 0.9.5:
WARNING: Global access to Rake DSL methods is deprecated. Please include
... Rake::DSL into classes and modules which use the Rake DSL methods.
WARNING: DSL method Shindo::Rake#desc called at ######/ruby/lib/ruby/gems/1.8/gems/shindo-0.3.2/lib/shindo/rake.rb:6:in `initialize'
WARNING: DSL method Shindo::Rake#task called at ######/ruby/lib/ruby/gems/1.8/gems/shindo-0.3.2/lib/shindo/rake.rb:7:in `initialize'
But now, with rake 10.0.2:
rake aborted!
undefined method `desc' for #<Shindo::Rake:0x31f38d8>
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.