Я использовал рельсы 4.1.4 с fakefs 0.5.2. Я пытался обновить рельсы 4.2.0 и теперь мои тесты не с этой ошибкой:FakeFS вызывает open-uri open, чтобы вызвать «Нет такого файла или каталога @ rb_sysopen»
Errno::ENOENT:
No such file or directory @ rb_sysopen - https://google.com/
Я попытался найти и, наконец, прибыл, что это вызвано, вероятно, по FakeFS, как, когда я звоню открыть в консоли рельсы, его работает следующим образом:
2.1.0 :001 > link = open("https://google.com")
=> #<Tempfile:/tmp/open-uri20150227-21959-18cqr0h>
2.1.0 :003 > require 'fakefs/spec_helpers'
=> true
2.1.0 :004 > FakeFS.activate!
=> true
2.1.0 :005 > link = open("https://google.com")
Errno::ENOENT: No such file or directory - https://google.com
Кто-нибудь знает причину этого?
Обновление: Итак, в итоге я решил заменить open-uri на curb. Существуют также другие альтернативы, такие как rest-client и Net::HTTP. Благодаря
Смотрите также https://github.com/defunkt/fakefs/issues/290 – HerbCSO