Miałem zamiar popisać trochę testów dla skilla oraz jakoś przy-kontrybuować do open source.
Jednakże po strzeleniu git clone z repo
https://github.com/there-is-no-spoon/spork
i standardowych czynnościach(bundle itd)…
Zauważyłem że podczas wywoływania testów w folderze, coś się wykrzacza
[code=ruby]bundle exec rake
(in /home/maciejk/spork/spork)
/usr/local/rvm/rubies/ruby-1.9.2-p290/bin/ruby -S bundle exec rspec ./spec/spork_spec.rb ./spec/spork/test_framework_spec.rb ./spec/spork/app_framework/rails_spec.rb ./spec/spork/app_framework/unknown_spec.rb ./spec/spork/forker_spec.rb ./spec/spork/app_framework_spec.rb ./spec/spork/server_spec.rb ./spec/spork/run_strategy/forking_spec.rb ./spec/spork/runner_spec.rb ./spec/spork/test_framework/cucumber_spec.rb ./spec/spork/test_framework/rspec_spec.rb ./spec/spork/diagnoser_spec.rb
…Exception encountered: #<SignalException: SIGTERM>
backtrace:
/home/maciejk/spork/spork/spec/spork/forker_spec.rb:32:in sleep' /home/maciejk/spork/spork/spec/spork/forker_spec.rb:32:in
block (4 levels) in <top (required)>’
/home/maciejk/spork/spork/lib/spork/forker.rb:21:in block in initialize' /home/maciejk/spork/spork/lib/spork/forker.rb:18:in
fork’
/home/maciejk/spork/spork/lib/spork/forker.rb:18:in initialize' /home/maciejk/spork/spork/spec/spork/forker_spec.rb:32:in
new’
/home/maciejk/spork/spork/spec/spork/forker_spec.rb:32:in block (3 levels) in <top (required)>' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example.rb:48:in
instance_eval’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example.rb:48:in block in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example.rb:107:in
with_around_hooks’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example.rb:45:in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:294:in
block in run_examples’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:290:in map' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:290:in
run_examples’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:262:in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:263:in
block in run’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:263:in map' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/example_group.rb:263:in
run’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/command_line.rb:24:in block (2 levels) in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/command_line.rb:24:in
map’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/command_line.rb:24:in block in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/reporter.rb:12:in
report’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/command_line.rb:21:in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/runner.rb:80:in
run_in_process’
/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/runner.rb:69:in run' /usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.6.3/lib/rspec/core/runner.rb:11:in
block in autorun’
…/home/maciejk/spork/spork/lib/spork/forker.rb:27:in write': not opened for writing (IOError) from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in
puts’
from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in puts' from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in
rescue in block in initialize’
from /home/maciejk/spork/spork/lib/spork/forker.rb:19:in block in initialize' from /home/maciejk/spork/spork/lib/spork/forker.rb:18:in
fork’
from /home/maciejk/spork/spork/lib/spork/forker.rb:18:in initialize' from /home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in
new’
from /home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in run' from /home/maciejk/spork/spork/spec/spork/run_strategy/forking_spec.rb:19:in
block (3 levels) in <top (required)>’
./home/maciejk/spork/spork/lib/spork/forker.rb:27:in write': not opened for writing (IOError) from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in
puts’
from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in puts' from /home/maciejk/spork/spork/lib/spork/forker.rb:27:in
rescue in block in initialize’
from /home/maciejk/spork/spork/lib/spork/forker.rb:19:in block in initialize' from /home/maciejk/spork/spork/lib/spork/forker.rb:18:in
fork’
from /home/maciejk/spork/spork/lib/spork/forker.rb:18:in initialize' from /home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in
new’
from /home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in run' from /home/maciejk/spork/spork/spec/spork/run_strategy/forking_spec.rb:31:in
block (3 levels) in <top (required)>’
…
Finished in 1.98 seconds
62 examples, 0 failures[/code]
Co śmieszne ogórkowa moda po wywołaniu
bundle exec cucumber features
też wali errorami w niektórych miejscach:
[code][…]
And the output should contain “lib/awesome.rb” # features/steps/sandbox_steps.rb:93
expected “” to include “lib/awesome.rb” (RSpec::Expectations::ExpectationNotMetError)
./features/steps/sandbox_steps.rb:94:in /^the (error output|output) should contain "(.+)"$/' features/diagnostic_mode.feature:37:in
And the output should contain “lib/awesome.rb”’
[…]
And I run rspec --drb spec/models/non_standard/boogie_spec.rb # features/steps/sandbox_steps.rb:34
Then the output should contain “BOOGIE!!!” # features/steps/sandbox_steps.rb:93
expected "Exception encountered: #<LoadError: no such file to load – app/models/non_standard/boogie>\nbacktrace:\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in require'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in
block in require’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:227:in load_dependency'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in
require’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:346:in require_or_load'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:491:in
load_missing_constant’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:183:in block in const_missing'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:181:in
each’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:181:in const_missing'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/backward_compatibility.rb:20:in
const_missing’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-expectations-2.5.0/lib/rspec/expectations/backward_compatibility.rb:6:in const_missing'\n/home/maciejk/spork/spork/tmp/sandbox/test_rails_project/spec/models/non_standard/boogie_spec.rb:1:in
<top (required)>’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in load'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in
block in load’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:227:in load_dependency'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in
load’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in block in load_spec_files'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in
map’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in load_spec_files'\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/command_line.rb:18:in
run’\n/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/monkey/spork/test_framework/rspec.rb:4:in run_tests'\n/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:13:in
block in run’\n/home/maciejk/spork/spork/lib/spork/forker.rb:21:in block in initialize'\n/home/maciejk/spork/spork/lib/spork/forker.rb:18:in
fork’\n/home/maciejk/spork/spork/lib/spork/forker.rb:18:in initialize'\n/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in
new’\n/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in run'\n/home/maciejk/spork/spork/lib/spork/server.rb:48:in
run’\n/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1558:in perform_without_block'\n/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1518:in
perform’\n/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1592:in block (2 levels) in main_loop'\n/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1588:in
loop’\n/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1588:in block in main_loop'\n" to include "BOOGIE!!!" Diff: @@ -1,2 +1,36 @@ -BOOGIE!!! +Exception encountered: #<LoadError: no such file to load -- app/models/non_standard/boogie> +backtrace: +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in
require’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in block in require' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:227:in
load_dependency’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:239:in require' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:346:in
require_or_load’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:491:in load_missing_constant' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:183:in
block in const_missing’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:181:in each' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:181:in
const_missing’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/backward_compatibility.rb:20:in const_missing' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-expectations-2.5.0/lib/rspec/expectations/backward_compatibility.rb:6:in
const_missing’
+/home/maciejk/spork/spork/tmp/sandbox/test_rails_project/spec/models/non_standard/boogie_spec.rb:1:in <top (required)>' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in
load’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in block in load' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:227:in
load_dependency’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/activesupport-3.0.7/lib/active_support/dependencies.rb:235:in load' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in
block in load_spec_files’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in map' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/configuration.rb:386:in
load_spec_files’
+/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/core/command_line.rb:18:in run' +/usr/local/rvm/gems/ruby-1.9.2-p290@spork/gems/rspec-core-2.5.2/lib/rspec/monkey/spork/test_framework/rspec.rb:4:in
run_tests’
+/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:13:in block in run' +/home/maciejk/spork/spork/lib/spork/forker.rb:21:in
block in initialize’
+/home/maciejk/spork/spork/lib/spork/forker.rb:18:in fork' +/home/maciejk/spork/spork/lib/spork/forker.rb:18:in
initialize’
+/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in new' +/home/maciejk/spork/spork/lib/spork/run_strategy/forking.rb:9:in
run’
+/home/maciejk/spork/spork/lib/spork/server.rb:48:in run' +/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1558:in
perform_without_block’
+/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1518:in perform' +/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1592:in
block (2 levels) in main_loop’
+/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1588:in loop' +/usr/local/rvm/rubies/ruby-1.9.2-p290/lib/ruby/1.9.1/drb/drb.rb:1588:in
block in main_loop’
(RSpec::Expectations::ExpectationNotMetError)
./features/steps/sandbox_steps.rb:94:in /^the (error output|output) should contain "(.+)"$/' features/rails_delayed_loading_workarounds.feature:95:in
Then the output should contain “BOOGIE!!!”’
[…]
OSTATECZNIE
Failing Scenarios:
cucumber features/diagnostic_mode.feature:6 # Scenario: Running spork --diagnose
cucumber features/rails_delayed_loading_workarounds.feature:70 # Scenario: respecting custom autoload paths
16 scenarios (2 failed, 1 undefined, 13 passed)
172 steps (2 failed, 4 skipped, 1 undefined, 165 passed)
2m48.260s[/code]
Jednakże nie zauważyłem żadnego ticketa na githubie odnośnie tego buga
https://github.com/timcharper/spork/issues?sort=created&direction=desc&state=open&page=1
Więc pomyślałem że po prostu znoobiłem i czegoś nie doinstalowałem.
- Co mam nie tak?
- Jak się testuje gem to też się stosuje podobną taktykę(git clone, bundle i bundle exec rake)?
- Trochę offtop: Czy cucumber zawszę tak zamula?