Class: ComposableFixtures::FixtureDirectory

Inherits:
Object
  • Object
show all
Includes:
Singleton
Defined in:
lib/fixture_directory.rb,
lib/composable_fixtures/fixture_directory.rb

Defined Under Namespace

Classes: DirectoryAlreadyExistsError, DirectoryDoesntExistError

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.createObject



34
35
36
# File 'lib/fixture_directory.rb', line 34

def self.create
  instance.create
end

.destroyObject



42
43
44
# File 'lib/fixture_directory.rb', line 42

def self.destroy
  instance.destroy
end

.pathObject



45
46
47
# File 'lib/composable_fixtures/fixture_directory.rb', line 45

def self.path
  instance.path
end

.write(fixtures) ⇒ Object



38
39
40
# File 'lib/fixture_directory.rb', line 38

def self.write(fixtures)
  instance.write(fixtures)
end

Instance Method Details

#createObject



11
12
13
14
# File 'lib/fixture_directory.rb', line 11

def create
  raise DirectoryAlreadyExistsError if @dir
  @dir = Dir.mktmpdir
end

#destroyObject



16
17
18
19
# File 'lib/fixture_directory.rb', line 16

def destroy
  raise DirectoryDoesntExistError unless @dir
  FileUtils.remove_entry @dir
end

#pathObject



29
30
31
# File 'lib/fixture_directory.rb', line 29

def path
  @dir.to_s
end

#write(name_to_fixtures) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/fixture_directory.rb', line 21

def write
  name_to_fixtures.each do |(name, yaml)|
    File.open(File.join(path, name), "w") do |f|
      f.write yaml
    end
  end      
end