Class: FakeFS::FakeDir
- Inherits:
-
Object
- Object
- FakeFS::FakeDir
- Defined in:
- lib/fakefs/fake/dir.rb
Overview
Fake Dir class
Instance Attribute Summary collapse
-
#atime ⇒ Object
Returns the value of attribute atime.
-
#content ⇒ Object
readonly
Returns the value of attribute content.
-
#ctime ⇒ Object
readonly
Returns the value of attribute ctime.
-
#gid ⇒ Object
Returns the value of attribute gid.
-
#mode ⇒ Object
Returns the value of attribute mode.
-
#mtime ⇒ Object
Returns the value of attribute mtime.
-
#name ⇒ Object
Returns the value of attribute name.
-
#parent ⇒ Object
Returns the value of attribute parent.
-
#uid ⇒ Object
Returns the value of attribute uid.
Instance Method Summary collapse
- #[](name) ⇒ Object
- #[]=(name, value) ⇒ Object
- #clone(parent = nil) ⇒ Object
- #delete(node = self) ⇒ Object
- #empty? ⇒ Boolean
- #entries ⇒ Object
- #entry ⇒ Object
-
#initialize(name = nil, parent = nil) ⇒ FakeDir
constructor
A new instance of FakeDir.
- #inspect ⇒ Object
- #matches(pattern) ⇒ Object
- #to_s ⇒ Object
Constructor Details
#initialize(name = nil, parent = nil) ⇒ FakeDir
Returns a new instance of FakeDir.
7 8 9 10 11 12 13 14 15 16 17 18 |
# File 'lib/fakefs/fake/dir.rb', line 7 def initialize(name = nil, parent = nil) @name = name @parent = parent @ctime = Time.now @mtime = @ctime @atime = @ctime @mode = 0100000 + (0777 - File.umask) @uid = Process.uid @gid = Process.gid @content = '' @entries = {} end |
Instance Attribute Details
#atime ⇒ Object
Returns the value of attribute atime.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def atime @atime end |
#content ⇒ Object (readonly)
Returns the value of attribute content.
5 6 7 |
# File 'lib/fakefs/fake/dir.rb', line 5 def content @content end |
#ctime ⇒ Object (readonly)
Returns the value of attribute ctime.
5 6 7 |
# File 'lib/fakefs/fake/dir.rb', line 5 def ctime @ctime end |
#gid ⇒ Object
Returns the value of attribute gid.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def gid @gid end |
#mode ⇒ Object
Returns the value of attribute mode.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def mode @mode end |
#mtime ⇒ Object
Returns the value of attribute mtime.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def mtime @mtime end |
#name ⇒ Object
Returns the value of attribute name.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def name @name end |
#parent ⇒ Object
Returns the value of attribute parent.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def parent @parent end |
#uid ⇒ Object
Returns the value of attribute uid.
4 5 6 |
# File 'lib/fakefs/fake/dir.rb', line 4 def uid @uid end |
Instance Method Details
#[](name) ⇒ Object
60 61 62 |
# File 'lib/fakefs/fake/dir.rb', line 60 def [](name) @entries[name] end |
#[]=(name, value) ⇒ Object
64 65 66 |
# File 'lib/fakefs/fake/dir.rb', line 64 def []=(name, value) @entries[name] = value end |
#clone(parent = nil) ⇒ Object
29 30 31 32 33 34 35 36 |
# File 'lib/fakefs/fake/dir.rb', line 29 def clone(parent = nil) clone = Marshal.load(Marshal.dump(self)) clone.entries.each do |value| value.parent = clone end clone.parent = parent if parent clone end |
#delete(node = self) ⇒ Object
68 69 70 71 72 73 74 |
# File 'lib/fakefs/fake/dir.rb', line 68 def delete(node = self) if node == self parent.delete(self) else @entries.delete(node.name) end end |
#empty? ⇒ Boolean
48 49 50 |
# File 'lib/fakefs/fake/dir.rb', line 48 def empty? @entries.empty? end |
#entries ⇒ Object
52 53 54 |
# File 'lib/fakefs/fake/dir.rb', line 52 def entries @entries.values end |
#entry ⇒ Object
20 21 22 |
# File 'lib/fakefs/fake/dir.rb', line 20 def entry self end |
#inspect ⇒ Object
24 25 26 27 |
# File 'lib/fakefs/fake/dir.rb', line 24 def inspect "(FakeDir name:#{name.inspect} " \ "parent:#{parent.to_s.inspect} size:#{@entries.size})" end |
#matches(pattern) ⇒ Object
56 57 58 |
# File 'lib/fakefs/fake/dir.rb', line 56 def matches(pattern) @entries.reject { |k, _v| pattern !~ k }.values end |