teacup-on-rockingchair / guard-cunit Goto Github PK
View Code? Open in Web Editor NEWGuard for CUnit
Home Page: http://teacup-on-rockingchair.github.com/guard-cunit/
Guard for CUnit
Home Page: http://teacup-on-rockingchair.github.com/guard-cunit/
ERROR: Guard::Cunit failed to achieve its <run_on_change>, exception was:
ArgumentError: wrong number of arguments (1 for 0)
/usr/lib/ruby/gems/1.9.1/gems/guard-cunit-0.0.1/lib/guard/cunit.rb:24:inrun_on_change' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:90:in
block in run_supervised_task'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:88:incatch' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:88:in
run_supervised_task'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:137:inblock in run_first_task_found' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:135:in
each'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:135:inrun_first_task_found' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:71:in
block in run_on_changes'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:161:inblock (3 levels) in scoped_guards' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:160:in
each'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:160:inblock (2 levels) in scoped_guards' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:159:in
catch'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:159:inblock in scoped_guards' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:158:in
each'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:158:inscoped_guards' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard/runner.rb:63:in
run_on_changes'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard.rb:110:inblock (2 levels) in setup_listener' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard.rb:323:in
block in within_preserved_state'
internal:prelude:10:insynchronize' /usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard.rb:320:in
within_preserved_state'
/usr/lib/ruby/gems/1.9.1/gems/guard-1.2.3/lib/guard.rb:109:inblock in setup_listener' /usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/listener.rb:190:in
call'
/usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/listener.rb:190:inon_change' /usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/listener.rb:199:in
block in initialize_adapter'
/usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/adapter.rb:162:incall' /usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/adapter.rb:162:in
poll_changed_dirs'
/usr/lib/ruby/gems/1.9.1/gems/listen-0.4.7/lib/listen/adapters/linux.rb:44:in `block in start'
Guard::Cunit has just been fired
fixed by commit 1f6e251
parser of cunit output does not handle suite initialization failure, in case programmer does not take care to report error exit code in that case.
The Cunit generally outputs following message:
WARNING - Suite initialization failed for ....
and in the summary one can see that we have suites that are not run. For example:
[#] Run Summary: Type Total Ran Passed Failed Inactive
[#] suites 3 2 n/a 1 0
[#] tests 26 24 24 0 0
[#] asserts 185 185 185 0 n/a
On some systemd the stderr output is not seen when guard is started, also spawning the tasks via the popen, by default givesme only stdout. That is ok with my dflt configuration issuing 'make 2>&1' but I would consider that not so elegant solution so will submit a patch to always merge in popen call stderr and stdout output
rake failed for ruby.19.3 look at http://travis-ci.org/#!/strandjata/guard-cunit/jobs/2532591 build 7 jobs 7.3 and 7.7
used wrong symbol for displaying passed test
rake failed on ruby 1.8.7 for reference travis build 7 http://travis-ci.org/#!/strandjata/guard-cunit/jobs/2532591 jobs 7.1,7.4and 7.6
here how the rspec execution looked like on MAC (I needed to type 'quit' on each test that called guard.run):
testmacs-Mac:guard-cunit testmac$ rspec -f d
Guard::Cunit::CunitParser
should generate a UI summary and full output from given text input
failure summary should be maximum a 3 row output
should be able to init with no output and later trigger process
Guard::Cunit
should inherit Guard class
Run guard
should run build
should run build on changes
should set libpath for executbles with current project directory by default
[1] guard(main)> quit
should set libpath to predefined lib directory when user has specified such in the Guardfile[1] guard(main)> quit
[1] guard(main)> quit
[1] guard(main)> quit
should run cunit test define in the Guardfile
[1] guard(main)> quit
should run predefined build command
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[1] guard(main)> quit
should run predefined clean command
Handle exit codes
[1] guard(main)> quit
should report failure on build failed
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[1] guard(main)> quit
should report failure on test failed
Displaying notifications
[1] guard(main)> quit
should display failure if build fails
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
[1] guard(main)> quit
should display failure if test fails
[1] guard(main)> quit
shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
should display pending if test is absent
should display success if build and test succeeded
Finished in 10.24 seconds
17 examples, 0 failures
testmacs-Mac:guard-cunit testmac$
it is quite annoying that even when the build fails tests are executed
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.