Re: em-synchrony tests
On Wed, Apr 23, 2014 at 6:34 PM, Pirate Praveen <pravi.a@gmail.com> wrote:
> Hi,
>
> Can anyone look at hiredis tests? I have disabled all tests first and
> now trying to enable it one by one. You have to remove the
> corresponding patch and build.
I misunderstood at first and thought you meant ruby-em-redis tests, from
#745502, so I fixed those... ^_^
(What is the ending +gh for btw, I guess that it might be for "github"? If you
include an unreleased version of upstream sources please add something
like ~git.$DATE_FETCHED.$GIT_COMMIT_SHA1 to the Debian version, e.g.
0.3.0~git.20140424.deadbeef-1.)
I had a quick look at the hiredis tests for ruby-em-synchrony also, and they
run with a redis-server running. There are however six failures, see below.
In any case, a running redis-server is probably required for the
em-synchrony tests also.
--
Per
root@saturn:~/ruby-em-synchrony-1.0.3# rake
/usr/bin/ruby2.0 -S rspec ./spec/activerecord_spec.rb
./spec/amqp_spec.rb ./spec/beanstalk_spec.rb
./spec/connection_pool_spec.rb ./spec/defer_spec.rb
./spec/em-mongo_spec.rb ./spec/fiber_iterator_spec.rb
./spec/hiredis_spec.rb ./spec/http_spec.rb ./spec/inlinesync_spec.rb
./spec/iterator_spec.rb ./spec/keyboard_spec.rb
./spec/memcache_spec.rb ./spec/mongo_spec.rb ./spec/multi_spec.rb
./spec/mysql2_spec.rb ./spec/redis_spec.rb ./spec/remcached_spec.rb
./spec/synchrony_spec.rb ./spec/system_spec.rb
./spec/tcpsocket_spec.rb ./spec/thread_spec.rb ./spec/timer_spec.rb
** Notice: The native BSON extension was not loaded. **
For optimal performance, use of the BSON extension is recommended.
To enable the extension make sure ENV['BSON_EXT_DISABLED'] is not set
and run the following command:
gem install bson_ext
If you continue to receive this message after installing, make sure that
the bson_ext gem is in your load path.
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/beanstalk_spec.rb:3: warning:
already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/activerecord_spec.rb:16:
warning: previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/connection_pool_spec.rb:3:
warning: already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/beanstalk_spec.rb:3: warning:
previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/connection_pool_spec.rb:4:
warning: already initialized constant QUERY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/activerecord_spec.rb:17:
warning: previous definition of QUERY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/http_spec.rb:5: warning:
already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/connection_pool_spec.rb:3:
warning: previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/inlinesync_spec.rb:6:
warning: already initialized constant URL
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/http_spec.rb:3: warning:
previous definition of URL was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/inlinesync_spec.rb:7:
warning: already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/http_spec.rb:5: warning:
previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/keyboard_spec.rb:4: warning:
already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/inlinesync_spec.rb:7:
warning: previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/mysql2_spec.rb:6: warning:
already initialized constant DELAY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/keyboard_spec.rb:4: warning:
previous definition of DELAY was here
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/mysql2_spec.rb:7: warning:
already initialized constant QUERY
/tmp/buildd/ruby-em-synchrony-1.0.3/spec/connection_pool_spec.rb:4:
warning: previous definition of QUERY was here
******************..**********.FFFFF..............**.*******.......****DEPRECATION:
stub is deprecated. Use double instead. Called from
/usr/lib/ruby/vendor_ruby/rspec/mocks/example_methods.rb:42:in `stub'.
.*..F...................................*..............
Pending:
Fiberized ActiveRecord driver for mysql2 should establish AR connection
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:29
Fiberized ActiveRecord driver for mysql2 should fire sequential,
synchronous requests within single fiber
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:39
Fiberized ActiveRecord driver for mysql2 should fire 100 requests in fibers
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:56
Fiberized ActiveRecord driver for mysql2 should create widget
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:67
Fiberized ActiveRecord driver for mysql2 should update widget
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:77
Fiberized ActiveRecord driver for mysql2 transactions should work properly
# Temporarily disabled with xit
# ./spec/activerecord_spec.rb:89
EventMachine::Synchrony::AMQP should yield until connection is ready
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:5
EventMachine::Synchrony::AMQP should yield until disconnection is complete
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:13
EventMachine::Synchrony::AMQP should yield until the channel is created
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:22
EventMachine::Synchrony::AMQP should yield until the queue is created
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:31
EventMachine::Synchrony::AMQP should yield when a queue is created
from a channel
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:40
EventMachine::Synchrony::AMQP should yield until the exchange is created
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:49
EventMachine::Synchrony::AMQP should publish and receive messages
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:70
EventMachine::Synchrony::AMQP should handle several consumers
# Temporarily disabled with xit
# ./spec/amqp_spec.rb:107
EventMachine::Synchrony::ConnectionPool should queue requests if
pool size is exceeded
# Temporarily disabled with xit
# ./spec/connection_pool_spec.rb:8
EventMachine::Synchrony::ConnectionPool should execute multiple
async pool requests within same fiber
# Temporarily disabled with xit
# ./spec/connection_pool_spec.rb:32
EventMachine::Synchrony::ConnectionPool should share connection pool
between different fibers
# Temporarily disabled with xit
# ./spec/connection_pool_spec.rb:56
EventMachine::Synchrony::ConnectionPool should share connection pool
between different fibers & async requests
# Temporarily disabled with xit
# ./spec/connection_pool_spec.rb:87
EventMachine::Mongo should yield until connection is ready
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:4
EventMachine::Mongo should update records in db
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:219
EventMachine::Mongo Synchronously (find & first) should insert a
record into db
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:17
EventMachine::Mongo Synchronously (find & first) should insert a
record into db and be able to find it
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:33
EventMachine::Mongo Synchronously (find & first) should be able to
order results
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:54
EventMachine::Mongo *A*synchronously (afind & afirst) [Mongo >
0.3.6, using cursor] should insert a record into db
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:84
EventMachine::Mongo *A*synchronously (afind & afirst) [Mongo >
0.3.6, using cursor] should insert a record into db and be able to
find it
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:102
EventMachine::Mongo *A*synchronously (afind & afirst) [Mongo >
0.3.6, using cursor] should be able to order results
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:124
EventMachine::Mongo authentication successfully authenticates
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:236
EventMachine::Mongo authentication raises an AuthenticationError if
it cannot authenticate
# Temporarily disabled with xit
# ./spec/em-mongo_spec.rb:249
EventMachine::Protocols::Memcache should fire sequential memcached requests
# Temporarily disabled with xit
# ./spec/memcache_spec.rb:5
Mongo::Connection connects to DB
# Temporarily disabled with xit
# ./spec/mongo_spec.rb:6
Mysql2::EM::Client should support queries
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:9
Mysql2::EM::Client should fire sequential, synchronous requests
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:21
Mysql2::EM::Client should have accept a callback, errback on async queries
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:36
Mysql2::EM::Client should fire simultaneous requests via Multi interface
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:49
Mysql2::EM::Client should fire sequential and simultaneous MySQL requests
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:71
Mysql2::EM::Client should raise Mysql::Error in case of error
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:100
Mysql2::EM::Client errback should not catch exception thrown from callback
# Temporarily disabled with xit
# ./spec/mysql2_spec.rb:110
EventMachine::Protocols::Redis should execute sync add and auth
# Temporarily disabled with xit
# ./spec/redis_spec.rb:93
Memcached should yield until connection is ready
# Temporarily disabled with xit
# ./spec/remcached_spec.rb:6
Memcached should fire sequential memcached requests
# Temporarily disabled with xit
# ./spec/remcached_spec.rb:14
Memcached should fire multi memcached requests
# Temporarily disabled with xit
# ./spec/remcached_spec.rb:30
EventMachine::Synchrony#next_tick should wrap next_tick into a Fiber context
# Temporarily disabled with xit
# ./spec/synchrony_spec.rb:21
EventMachine::Synchrony::TCPSocket when wrapped in a connection pool
accepts "send"
# Temporarily disabled with xit
# ./spec/tcpsocket_spec.rb:403
Failures:
1) EventMachine::Hiredis should yield until connection is ready
Failure/Error: Unable to find matching line from backtrace
NoMethodError:
undefined method `each' for nil:NilClass
# ./lib/em-synchrony/em-hiredis.rb:50:in `block (2 levels) in connect'
2) EventMachine::Hiredis should work with compact connect syntax
Failure/Error: EventMachine.synchrony do
NameError:
uninitialized constant EventMachine::Hiredis::Client::PUBSUB_MESSAGES
# ./lib/em-synchrony/em-hiredis.rb:67:in `block in connect'
# ./lib/em-synchrony.rb:38:in `synchrony'
# ./spec/hiredis_spec.rb:15:in `block (2 levels) in <top (required)>'
3) EventMachine::Hiredis should work with manual db select
Failure/Error: EventMachine.synchrony do
NameError:
uninitialized constant EventMachine::Hiredis::Client::PUBSUB_MESSAGES
# ./lib/em-synchrony/em-hiredis.rb:67:in `block in connect'
# ./lib/em-synchrony.rb:38:in `synchrony'
# ./spec/hiredis_spec.rb:26:in `block (2 levels) in <top (required)>'
4) EventMachine::Hiredis should get/set records synchronously
Failure/Error: Unable to find matching line from backtrace
NoMethodError:
undefined method `each' for nil:NilClass
# ./lib/em-synchrony/em-hiredis.rb:50:in `block (2 levels) in connect'
5) EventMachine::Hiredis should incr/decr key synchronously
Failure/Error: Unable to find matching line from backtrace
NoMethodError:
undefined method `each' for nil:NilClass
# ./lib/em-synchrony/em-hiredis.rb:50:in `block (2 levels) in connect'
6) EventMachine::Synchrony::TCPSocket.new to an unresolvable host
raises SocketError
Failure/Error: proc {
expected SocketError, got #<Errno::ETIMEDOUT: Connection timed
out> with backtrace:
# ./lib/em-synchrony/tcpsocket.rb:23:in `new'
# ./spec/tcpsocket_spec.rb:53:in `block (6 levels) in <top (required)>'
# ./spec/tcpsocket_spec.rb:52:in `block (5 levels) in <top (required)>'
# ./lib/em-synchrony.rb:38:in `block (2 levels) in synchrony'
# ./spec/tcpsocket_spec.rb:52:in `block (5 levels) in <top (required)>'
# ./lib/em-synchrony.rb:38:in `block (2 levels) in synchrony'
Finished in 32.3 seconds
126 examples, 6 failures, 43 pending
Failed examples:
rspec ./spec/hiredis_spec.rb:5 # EventMachine::Hiredis should yield
until connection is ready
rspec ./spec/hiredis_spec.rb:14 # EventMachine::Hiredis should work
with compact connect syntax
rspec ./spec/hiredis_spec.rb:25 # EventMachine::Hiredis should work
with manual db select
rspec ./spec/hiredis_spec.rb:37 # EventMachine::Hiredis should get/set
records synchronously
rspec ./spec/hiredis_spec.rb:49 # EventMachine::Hiredis should
incr/decr key synchronously
rspec ./spec/tcpsocket_spec.rb:50 #
EventMachine::Synchrony::TCPSocket.new to an unresolvable host raises
SocketError
/usr/bin/ruby2.0 -S rspec ./spec/activerecord_spec.rb
./spec/amqp_spec.rb ./spec/beanstalk_spec.rb
./spec/connection_pool_spec.rb ./spec/defer_spec.rb
./spec/em-mongo_spec.rb ./spec/fiber_iterator_spec.rb
./spec/hiredis_spec.rb ./spec/http_spec.rb ./spec/inlinesync_spec.rb
./spec/iterator_spec.rb ./spec/keyboard_spec.rb
./spec/memcache_spec.rb ./spec/mongo_spec.rb ./spec/multi_spec.rb
./spec/mysql2_spec.rb ./spec/redis_spec.rb ./spec/remcached_spec.rb
./spec/synchrony_spec.rb ./spec/system_spec.rb
./spec/tcpsocket_spec.rb ./spec/thread_spec.rb ./spec/timer_spec.rb
failed
Reply to: