私はこの問題でしばらく苦労してきました。fileutils
ディレクトリの作成やファイルのコピーなど、多くの操作を使用する Ruby CLI をテストしようとしています。gemを使用しようとしていますfakefs
が、すぐにエラーが発生します
When I successfully run `dotfiles init` # aruba-0.5.3/lib/aruba/cucumber.rb:71
No such file or directory - No such file or directory - /tmp/aruba-out20130817-15800-ke8nou (Errno::ENOENT)
/Users/Brian/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/tempfile.rb:146:in `open'
/Users/Brian/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/tempfile.rb:146:in `block in initialize'
/Users/Brian/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/tmpdir.rb:142:in `create'
/Users/Brian/.rvm/rubies/ruby-2.0.0-p0/lib/ruby/2.0.0/tempfile.rb:136:in `initialize'
features/dotfiles_repository.feature:8:in `When I successfully run `dotfiles init`'
そのため、 readme/tmp/aruba
によると、cucumber aruba がすべてのファイル操作を実行する場所がわかりません。テストはなくても問題なく実行されるので、セットアップで何かを想定しています。fakefs
ここに私のfeatures/support/env.rb
ファイルがあります
require 'aruba/cucumber'
require 'fakefs/safe'
Before do
FakeFS.activate!
end
After do
FakeFS::FileSystem.clear
FakeFS.deactivate!
end
誰かが私が間違っているかもしれないことを知っていますか? どんな助けでも大歓迎です。fakefs を使わないアイデアでもいいので、ぜひ聞いてみたいです。ありがとう