Skip to content

Test server may have some issues on Apple Silicon / macOS #260

Description

@tagliala

Hello,

I'm trying to run specs on my local machine, however, the test server seems to start and I get a timeout after 1 minute

$ time bundle exec rake

An error occurred in a `before(:suite)` hook.
Failure/Error: res = ::Net::HTTP.get_response("localhost", '/__identify__', port)

Net::OpenTimeout:
  Failed to open TCP connection to localhost:3001 (execution expired)
# ./spec/support/localhost_server.rb:57:in 'LocalhostServer#booted?'
# ./spec/support/localhost_server.rb:31:in 'block in LocalhostServer#initialize'
# ./spec/support/localhost_server.rb:96:in 'LocalhostServer#wait_until'
# ./spec/support/localhost_server.rb:31:in 'LocalhostServer#initialize'
# ./spec/spec_helper.rb:21:in 'Class#new'
# ./spec/spec_helper.rb:21:in 'block (2 levels) in <top (required)>'

Finished in 1 minute 0.03 seconds (files took 0.1704 seconds to load)
0 examples, 0 failures, 1 error occurred outside of examples


real	1m0.534s
user	0m0.406s
sys	0m0.114s

If I interrupt CTRL+C the spec and start it again, there is a background process spinned which allows spec to run, and I get the following failures

Failures:

  1) Ethon::Easy::Http::Put#setup when body when requesting sending string body makes a put request
     Failure/Error: expect(easy.response_body).to include('"REQUEST_METHOD":"PUT"')
     
     Errno::EMFILE:
       Too many open files - getcwd
     # ./spec/ethon/easy/http/put_spec.rb:114:in 'block (6 levels) in <top (required)>'

  2) Ethon::Easy::Http::Put#setup when body when requesting sending string body submits a body
     Failure/Error: expect(easy.response_body).to include('"body":"a=1%26b%3D2"')
     
     Errno::EMFILE:
       Too many open files - getcwd
     # ./spec/ethon/easy/http/put_spec.rb:118:in 'block (6 levels) in <top (required)>'

Finished in 3.47 seconds (files took 0.17487 seconds to load)
579 examples, 2 failures, 3 pending

Failed examples:

rspec ./spec/ethon/easy/http/put_spec.rb:113 # Ethon::Easy::Http::Put#setup when body when requesting sending string body makes a put request
rspec ./spec/ethon/easy/http/put_spec.rb:117 # Ethon::Easy::Http::Put#setup when body when requesting sending string body submits a body
  • CPU: Apple Silicon M1
  • Ruby: 3.4.5
  • macOS: 15.6 (24G84)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions