class Released::Goals::FileExists

Public Class Methods

new(config) click to toggle source
# File lib/released/goals/file_exists.rb, line 6
def initialize(config)
  @filename = config.fetch('filename')
  @contents = config.fetch('contents')
end

Public Instance Methods

achieved?() click to toggle source
# File lib/released/goals/file_exists.rb, line 19
def achieved?
  File.file?(@filename) && File.read(@filename) == @contents
end
failure_reason() click to toggle source
# File lib/released/goals/file_exists.rb, line 23
def failure_reason
  if !File.file?(@filename)
    "file `#{@filename}` does not exist"
  elsif File.read(@filename) != @contents
    "file `#{@filename}` does not have the expected contents"
  else
    'unknown reason'
  end
end
to_s() click to toggle source
# File lib/released/goals/file_exists.rb, line 11
def to_s
  "file exists (#{@filename})"
end
try_achieve() click to toggle source
# File lib/released/goals/file_exists.rb, line 15
def try_achieve
  File.write(@filename, @contents)
end