Last active
December 17, 2015 11:29
-
-
Save dlecocq/5602157 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
PATH | |
remote: . | |
specs: | |
qless (0.9.2) | |
redis (>= 2.2) | |
GEM | |
remote: http://rubygems.org/ | |
specs: | |
addressable (2.3.4) | |
capybara (1.1.4) | |
mime-types (>= 1.16) | |
nokogiri (>= 1.3.3) | |
rack (>= 1.0.0) | |
rack-test (>= 0.5.4) | |
selenium-webdriver (~> 2.0) | |
xpath (~> 0.1.4) | |
childprocess (0.3.9) | |
ffi (~> 1.0, >= 1.0.11) | |
columnize (0.3.6) | |
daemons (1.1.9) | |
debugger (1.5.0) | |
columnize (>= 0.3.1) | |
debugger-linecache (~> 1.2.0) | |
debugger-ruby_core_source (~> 1.2.0) | |
debugger-linecache (1.2.0) | |
debugger-ruby_core_source (1.2.0) | |
diff-lcs (1.2.4) | |
eventmachine (1.0.3) | |
faraday (0.8.7) | |
multipart-post (~> 1.1) | |
faye-websocket (0.5.0) | |
eventmachine (>= 0.12.0) | |
websocket-driver | |
ffi (1.8.1) | |
hashie (2.0.4) | |
http_parser.rb (0.5.3) | |
launchy (2.1.2) | |
addressable (~> 2.3) | |
mime-types (1.23) | |
multi_json (1.7.3) | |
multipart-post (1.2.0) | |
nokogiri (1.5.9) | |
poltergeist (1.0.2) | |
capybara (~> 1.1) | |
childprocess (~> 0.3) | |
faye-websocket (~> 0.4, >= 0.4.4) | |
http_parser.rb (~> 0.5.3) | |
multi_json (~> 1.0) | |
rack (1.5.2) | |
rack-protection (1.5.0) | |
rack | |
rack-test (0.6.2) | |
rack (>= 1.0) | |
rake (10.0.4) | |
redis (3.0.4) | |
rspec (2.13.0) | |
rspec-core (~> 2.13.0) | |
rspec-expectations (~> 2.13.0) | |
rspec-mocks (~> 2.13.0) | |
rspec-core (2.13.1) | |
rspec-expectations (2.13.0) | |
diff-lcs (>= 1.1.3, < 2.0) | |
rspec-fire (1.1.3) | |
rspec (~> 2.11) | |
rspec-mocks (2.13.1) | |
rubyzip (0.9.9) | |
selenium-webdriver (2.32.1) | |
childprocess (>= 0.2.5) | |
multi_json (~> 1.0) | |
rubyzip | |
websocket (~> 1.0.4) | |
sentry-raven (0.4.6) | |
faraday (>= 0.7.6) | |
hashie | |
multi_json (~> 1.0) | |
uuidtools | |
simplecov (0.6.4) | |
multi_json (~> 1.0) | |
simplecov-html (~> 0.5.3) | |
simplecov-html (0.5.3) | |
sinatra (1.3.6) | |
rack (~> 1.4) | |
rack-protection (~> 1.3) | |
tilt (~> 1.3, >= 1.3.3) | |
thin (1.5.1) | |
daemons (>= 1.0.9) | |
eventmachine (>= 0.12.6) | |
rack (>= 1.0.0) | |
tilt (1.4.0) | |
uuidtools (2.1.4) | |
vegas (0.1.11) | |
rack (>= 1.0.0) | |
websocket (1.0.7) | |
websocket-driver (0.1.0) | |
xpath (0.1.4) | |
nokogiri (~> 1.3) | |
PLATFORMS | |
ruby | |
DEPENDENCIES | |
capybara (~> 1.1.2) | |
debugger | |
launchy (~> 2.1.0) | |
poltergeist (~> 1.0) | |
qless! | |
rake (~> 10.0) | |
rspec (~> 2.12) | |
rspec-fire (~> 1.1) | |
sentry-raven (~> 0.4) | |
simplecov (~> 0.6.2) | |
sinatra (~> 1.3.2) | |
thin | |
vegas (~> 0.1.11) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
5) Qless::Server can track a job | |
Failure/Error: visit '/track' | |
NoMethodError: | |
undefined method `parser' for Faye::WebSocket:Class | |
# ./spec/integration/server_spec.rb:260:in `block (2 levels) in <module:Qless>' | |
6) Qless::Server can retry a single job | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:291:in `block (2 levels) in <module:Qless>' | |
7) Qless::Server can display, cancel, move recurring jobs | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:675:in `block (2 levels) in <module:Qless>' | |
8) Qless::Server can visit the tracked page | |
Failure/Error: visit '/track' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:162:in `block (2 levels) in <module:Qless>' | |
9) Qless::Server can visit the failed page | |
Failure/Error: visit '/failed' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:379:in `block (2 levels) in <module:Qless>' | |
10) Qless::Server can sort failed groupings by the number of affected jobs | |
Failure/Error: visit "/" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:585:in `block (2 levels) in <module:Qless>' | |
11) Qless::Server can see the root-level summary | |
Failure/Error: visit '/' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:110:in `block (2 levels) in <module:Qless>' | |
12) Qless::Server can visit each top-nav tab | |
Failure/Error: visit '/' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:35:in `block (2 levels) in <module:Qless>' | |
13) Qless::Server can add tags to a recurring job | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:718:in `block (2 levels) in <module:Qless>' | |
14) Qless::Server can cancel a single job | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:307:in `block (2 levels) in <module:Qless>' | |
15) Qless::Server can move a job | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:273:in `block (2 levels) in <module:Qless>' | |
16) Qless::Server can change a job's priority | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:484:in `block (2 levels) in <module:Qless>' | |
17) Qless::Server can change recurring job priorities | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:701:in `block (2 levels) in <module:Qless>' | |
18) Qless::Server can remove tags it has just added | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:547:in `block (2 levels) in <module:Qless>' | |
19) Qless::Server can search by tag | |
Failure/Error: visit '/tag?tag=foo' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:346:in `block (2 levels) in <module:Qless>' | |
20) Qless::Server can visit the various /queues/* endpoints | |
Failure/Error: visit '/queues/testing/waiting' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:605:in `block (2 levels) in <module:Qless>' | |
21) Qless::Server can paginate jobs on a state filter tab | |
Failure/Error: visit "/queues/#{q.name}/depends" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:104:in `block (2 levels) in <module:Qless>' | |
22) Qless::Server can paginate the failed jobs page | |
Failure/Error: visit '/failed/group' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:91:in `block (2 levels) in <module:Qless>' | |
23) Qless::Server can retry a group of failed jobs | |
Failure/Error: visit '/failed' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:406:in `block (2 levels) in <module:Qless>' | |
24) Qless::Server can remove tags | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:530:in `block (2 levels) in <module:Qless>' | |
25) Qless::Server can display the correct buttons for jobs | |
Failure/Error: visit "/jobs/#{job.jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:214:in `block (2 levels) in <module:Qless>' | |
26) Qless::Server can cancel a group of failed jobs | |
Failure/Error: visit '/failed' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:446:in `block (2 levels) in <module:Qless>' | |
27) Qless::Server can add tags to a job | |
Failure/Error: visit "/jobs/#{jid}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:501:in `block (2 levels) in <module:Qless>' | |
28) Qless::Server can visit the configuration | |
Failure/Error: visit '/config' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:326:in `block (2 levels) in <module:Qless>' | |
29) Qless::Server shows the state of tracked jobs in the overview | |
Failure/Error: visit '/' | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:632:in `block (2 levels) in <module:Qless>' | |
30) Qless::Server can display tags and priorities for jobs | |
Failure/Error: visit "/jobs/#{q.put(Qless::Job, {})}" | |
NoMethodError: | |
undefined method `encode' for nil:NilClass | |
# ./spec/integration/server_spec.rb:240:in `block (2 levels) in <module:Qless>' |
I pulled your latest, and now I get all green for the server specs:
Qless::Server
can retry a single job
can add tags to a job
can add tags to a recurring job
can display, cancel, move recurring jobs
can display the correct buttons for jobs
can change recurring job priorities
can visit each top-nav tab
can cancel a group of failed jobs
can visit the tracked page
can remove tags
can track a job
can visit the page for a specific job
can visit the various /queues/* endpoints
can retry a group of failed jobs
can cancel a single job
can visit the configuration
can move a job
can visit the failed page
can display tags and priorities for jobs
can paginate a group of tagged jobs
shows the state of tracked jobs in the overview
can paginate the failed jobs page
can see the root-level summary
can search by tag
can change a job's priority
can remove tags it has just added
can paginate jobs on a state filter tab
can sort failed groupings by the number of affected jobs
Rack Tests
can access the JSON endpoints for queue sizes
can access the JSON endpoint for failures
Finished in 11.5 seconds
30 examples, 0 failures
However, when I run everything with bin/rake
I get 10 failures (but none from the server spec):
➜ qless git:(unified) ✗ bin/rake
/Users/myron/.rvm/rubies/ruby-1.9.3-p327/bin/ruby -Ispec -rsimplecov_setup -S rspec ./spec/integration/lua_script_spec.rb ./spec/integration/qless_spec.rb ./spec/integration/server_spec.rb ./spec/integration/worker_spec.rb ./spec/unit/job_reservers/ordered_spec.rb ./spec/unit/job_reservers/round_robin_spec.rb ./spec/unit/job_reservers/shuffled_round_robin_spec.rb ./spec/unit/job_spec.rb ./spec/unit/middleware/redis_reconnect_spec.rb ./spec/unit/middleware/retry_exceptions_spec.rb ./spec/unit/middleware/sentry_spec.rb ./spec/unit/qless_spec.rb ./spec/unit/queue_spec.rb ./spec/unit/worker_spec.rb --profile --format progress
Run options: include {:f=>true}
All examples were filtered out; ignoring {:f=>true}
....................................................F..F....F......F.......F......F.............................................................................................................................................FFFF........................................................................
Failures:
1) Qless::Job#retry does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
2) Qless::Job#retry does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
3) Qless::Job#move does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
4) Qless::Job#complete does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
5) Qless::Job#cancel does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
6) Qless::Job#fail does not update #state_changed? if there is a redis connection error
Failure/Error: expect {
expected Qless::MyCustomError but nothing was raised
# ./spec/unit/job_spec.rb:124:in `block (4 levels) in <module:Qless>'
7) Worker integration when a job times out fails the job with an error containing the job backtrace
Failure/Error: expect(job.state).to eq("failed")
expected: "failed"
got: "complete"
(compared using ==)
# ./spec/integration/worker_spec.rb:135:in `block (3 levels) in <top (required)>'
8) Worker integration when a job times out gracefully handles it if the child process dies before returning a backtrace
Failure/Error: expect(job.state).to eq("failed")
expected: "failed"
got: "complete"
(compared using ==)
# ./spec/integration/worker_spec.rb:155:in `block (3 levels) in <top (required)>'
9) Worker integration when a job times out gracefully handles it if the child process is not listening to know to return the backtrace
Failure/Error: expect(job.state).to eq("failed")
expected: "failed"
got: "complete"
(compared using ==)
# ./spec/integration/worker_spec.rb:145:in `block (3 levels) in <top (required)>'
10) Worker integration when a job times out kills the child process
Failure/Error: expect(client.redis.get("slow_job_completed")).to be_nil
expected: nil
got: "true"
# ./spec/integration/worker_spec.rb:128:in `block (3 levels) in <top (required)>'
Finished in 39.39 seconds
300 examples, 10 failures
Failed examples:
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#retry does not update #state_changed? if there is a redis connection error
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#retry does not update #state_changed? if there is a redis connection error
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#move does not update #state_changed? if there is a redis connection error
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#complete does not update #state_changed? if there is a redis connection error
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#cancel does not update #state_changed? if there is a redis connection error
rspec ./spec/unit/job_spec.rb:120 # Qless::Job#fail does not update #state_changed? if there is a redis connection error
rspec ./spec/integration/worker_spec.rb:131 # Worker integration when a job times out fails the job with an error containing the job backtrace
rspec ./spec/integration/worker_spec.rb:149 # Worker integration when a job times out gracefully handles it if the child process dies before returning a backtrace
rspec ./spec/integration/worker_spec.rb:140 # Worker integration when a job times out gracefully handles it if the child process is not listening to know to return the backtrace
rspec ./spec/integration/worker_spec.rb:126 # Worker integration when a job times out kills the child process
Randomized with seed 42606
Coverage report generated for RSpec to /Users/myron/code/qless/coverage. 857 / 960 LOC (89.27%) covered.
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
I get different errors for
spec/integration/server_spec.rb
: