cool.io
cool.io copied to clipboard
Two test failures with IPv6?
Failures:
1) DNS connects to valid domains
Failure/Error: c.close
NoMethodError:
undefined method `close' for nil:NilClass
# ./spec/dns_spec.rb:32:in `ensure in block (2 levels) in <top (required)>'
# ./spec/dns_spec.rb:32:in `block (2 levels) in <top (required)>'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:254:in `instance_exec'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:254:in `block in run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:500:in `block in with_around_and_singleton_context_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:457:in `block in with_around_example_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:464:in `block in run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:602:in `run_around_example_hooks_for'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:464:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:457:in `with_around_example_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:500:in `with_around_and_singleton_context_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:251:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:629:in `block in run_examples'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:625:in `map'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:625:in `run_examples'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:591:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `map'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/configuration.rb:1989:in `with_suite_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:111:in `block in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/reporter.rb:74:in `report'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:110:in `run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:87:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:71:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:45:in `invoke'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/exe/rspec:4:in `<main>'
# ------------------
# --- Caused by: ---
# SocketError:
# getaddrinfo: Address family for hostname not supported
# ./lib/cool.io/dns_resolver.rb:110:in `send'
2) DNS fires on_resolve_failed for invalid domains
Failure/Error: @socket.send request_message, 0, @nameservers.first, DNS_PORT
SocketError:
getaddrinfo: Address family for hostname not supported
# ./lib/cool.io/dns_resolver.rb:110:in `send'
# ./lib/cool.io/dns_resolver.rb:110:in `send_request'
# ./lib/cool.io/dns_resolver.rb:77:in `attach'
# (eval):3:in `attach'
# ./spec/dns_spec.rb:37:in `block (2 levels) in <top (required)>'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:254:in `instance_exec'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:254:in `block in run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:500:in `block in with_around_and_singleton_context_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:457:in `block in with_around_example_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:464:in `block in run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:602:in `run_around_example_hooks_for'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/hooks.rb:464:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:457:in `with_around_example_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:500:in `with_around_and_singleton_context_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example.rb:251:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:629:in `block in run_examples'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:625:in `map'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:625:in `run_examples'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/example_group.rb:591:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `map'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/configuration.rb:1989:in `with_suite_hooks'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:111:in `block in run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/reporter.rb:74:in `report'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:110:in `run_specs'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:87:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:71:in `run'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib/rspec/core/runner.rb:45:in `invoke'
# /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/exe/rspec:4:in `<main>'
Finished in 5.48 seconds (files took 0.17962 seconds to load)
38 examples, 2 failures
Failed examples:
rspec ./spec/dns_spec.rb:24 # DNS connects to valid domains
rspec ./spec/dns_spec.rb:36 # DNS fires on_resolve_failed for invalid domains
/usr/bin/ruby -I/usr/lib/ruby/gems/2.7.0/gems/rspec-support-3.8.0/lib:/usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/lib /usr/lib/ruby/gems/2.7.0/gems/rspec-core-3.8.0/exe/rspec --pattern spec/\*\*\{,/\*/\*\*\}/\*_spec.rb failed
Hi,
I'm trying to build the gem on my local workstation to create a native arch linux package. during the test run I get the above issues. If I remove my IPv6 resolver from /etc/resolv.conf
the tests pass. Any idea how to fix this?
Probably has something to do with the fact that Coolio::DNSResolver doesn't support IPv6.