Addressable::URI::InvalidURIError: Не может быть пути с двумя начальными слешами без установленных прав доступа: '//'
Наши тесты проходят локально. Но в Circle CI мы получаем ошибку, как показано ниже для всех интеграционных тестов, которые мы написали с использованием капибары, Rspec.
Failures:
1) the inspection access When inspector has no access removes inspection from table
Failure/Error: visit '/'
Addressable::URI::InvalidURIError:
Cannot have a path with two leading slashes without an authority set: '//'
# /home/ubuntu/.bundle_end_to_end/ruby/2.3.0/gems/addressable-2.5.2/lib/addressable/uri.rb:2429:in `validate'
# /home/ubuntu/.bundle_end_to_end/ruby/2.3.0/gems/addressable-2.5.2/lib/addressable/uri.rb:1538:in `path='
# /home/ubuntu/.bundle_end_to_end/ruby/2.3.0/gems/capybara-2.15.2/lib/capybara/session.rb:265:in `visit'
# /home/ubuntu/.bundle_end_to_end/ruby/2.3.0/gems/capybara-2.15.2/lib/capybara/dsl.rb:50:in `block (2 levels) in <module:DSL>'
# ./spec/support/sessions_management.rb:3:in `sign_in'
# ./spec/support/sessions_management.rb:19:in `sign_in_as'
# ./spec/inspection_access_spec.rb:11:in `block (3 levels) in <top (required)>'
2) the inspection access When inspector has access adds the inspection to the table
Failure/Error: visit '/'
Addressable::URI::InvalidURIError:
Cannot have a path with two leading slashes without an authority set: '//'
Rails 4.2.8 и Ruby 2.3.3. Любая идея, где мы должны посмотреть?
1 ответ
Решение
У тебя есть Capybara.app_host
установить с последующим '/' (например, Capybara.app_host = "http://www.example.com/"
). Это вызывает проблему в Capybara 2.15.2 при посещении "/". Либо удалите завершающий символ '/' (например, Capybara.app_host =
http://www.example.com/`) если возможно, или откатитесь на Capybara 2.15.1, пока не выйдет 2.15.3.