Sha256: aa2c628b44cf2b58ecc35811ba365598c5b537c210efe25425c9e8f6ed95e0a7
Contents?: true
Size: 1.71 KB
Versions: 4
Compression:
Stored size: 1.71 KB
Contents
RealFile = File RealFileTest = FileTest RealFileUtils = FileUtils RealDir = Dir RealPathname = Pathname module FakeFS @activated = false class << self def activated? @activated end def activate! @activated = true Object.class_eval do remove_const(:Dir) remove_const(:File) remove_const(:FileTest) remove_const(:FileUtils) remove_const(:Pathname) if RUBY_VERSION >= "1.9.3" const_set(:Dir, FakeFS::Dir) const_set(:File, FakeFS::File) const_set(:FileUtils, FakeFS::FileUtils) const_set(:FileTest, FakeFS::FileTest) const_set(:Pathname, FakeFS::Pathname) if RUBY_VERSION >= "1.9.3" end true end def deactivate! @activated = false Object.class_eval do remove_const(:Dir) remove_const(:File) remove_const(:FileTest) remove_const(:FileUtils) remove_const(:Pathname) if RUBY_VERSION >= "1.9.3" const_set(:Dir, RealDir) const_set(:File, RealFile) const_set(:FileTest, RealFileTest) const_set(:FileUtils, RealFileUtils) const_set(:Pathname, RealPathname) if RUBY_VERSION >= "1.9.3" end true end def with if activated? yield else begin activate! yield ensure deactivate! end end end def without if !activated? yield else begin deactivate! yield ensure activate! end end end end end def FakeFS(&block) return ::FakeFS unless block ::FakeFS.with(&block) end
Version data entries
4 entries across 4 versions & 1 rubygems
Version | Path |
---|---|
fakefs-0.5.0 | lib/fakefs/base.rb |
fakefs-0.4.3 | lib/fakefs/base.rb |
fakefs-0.4.2 | lib/fakefs/base.rb |
fakefs-0.4.1 | lib/fakefs/base.rb |