Module: FakeFS
- Included in:
- SpecHelpers, SpecHelpers::All
- Defined in:
- lib/fakefs/base.rb,
lib/fakefs/dir.rb,
lib/fakefs/file.rb,
lib/fakefs/kernel.rb,
lib/fakefs/globber.rb,
lib/fakefs/version.rb,
lib/fakefs/fake/dir.rb,
lib/fakefs/pathname.rb,
lib/fakefs/fake/file.rb,
lib/fakefs/file_test.rb,
lib/fakefs/fileutils.rb,
lib/fakefs/file_system.rb,
lib/fakefs/fake/symlink.rb,
lib/fakefs/spec_helpers.rb
Overview
Defined Under Namespace
Modules: FileSystem, FileTest, FileUtils, Globber, Kernel, SpecHelpers, Version
Classes: Dir, FakeDir, FakeFile, FakeSymlink, File, Pathname
Class Method Summary
collapse
Instance Method Summary
collapse
Class Method Details
.activate! ⇒ Object
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
|
# File 'lib/fakefs/base.rb', line 24
def activate!
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'
::FakeFS::Kernel.hijack!
end
@activated = true
true
end
|
.activated? ⇒ Boolean
20
21
22
|
# File 'lib/fakefs/base.rb', line 20
def activated?
@activated ? true : false
end
|
.deactivate! ⇒ Object
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
|
# File 'lib/fakefs/base.rb', line 45
def deactivate!
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'
::FakeFS::Kernel.unhijack!
end
@activated = false
true
end
|
.with ⇒ Object
66
67
68
69
70
71
72
73
74
75
76
77
|
# File 'lib/fakefs/base.rb', line 66
def with
if activated?
yield
else
begin
activate!
yield
ensure
deactivate!
end
end
end
|
.without ⇒ Object
79
80
81
82
83
84
85
86
87
88
89
90
|
# File 'lib/fakefs/base.rb', line 79
def without
if !activated?
yield
else
begin
deactivate!
yield
ensure
activate!
end
end
end
|
Instance Method Details
#use_fakefs(describe_block, opts) ⇒ Object
36
37
38
39
40
41
42
43
44
45
|
# File 'lib/fakefs/spec_helpers.rb', line 36
def use_fakefs(describe_block, opts)
describe_block.before opts[:with] do
FakeFS.activate!
end
describe_block.after opts[:with] do
FakeFS.deactivate!
FakeFS::FileSystem.clear if opts[:with] == :each
end
end
|