class Enforce::DSL

Attributes

last_file[R]

Public Instance Methods

failed_results() click to toggle source
# File lib/enforce/dsl.rb, line 74
def failed_results
  results.reject { |result| result[:pass] }
end
file(name) { || ... } click to toggle source
# File lib/enforce/dsl.rb, line 5
def file(name)
  pass = File.exist?(name)
  @last_file = name

  add_result message: "file `#{name}`", pass: pass

  return unless pass
  yield if block_given?
end
folder(name) { || ... } click to toggle source
# File lib/enforce/dsl.rb, line 20
def folder(name)
  pass = Dir.exist?(name)
  add_result message: "folder `#{name}`", pass: pass

  return unless pass && block_given?

  Dir.chdir name do
    yield
  end
end
line(content) click to toggle source
# File lib/enforce/dsl.rb, line 56
def line(content)
  pass = File.readlines(last_file).map(&:strip).include?(content)
  add_result message: "line `#{content}`", pass: pass
end
no_file(name) click to toggle source
# File lib/enforce/dsl.rb, line 15
def no_file(name)
  pass = !File.exist?(name)
  add_result message: "no file `#{name}`", pass: pass
end
no_folder(name) click to toggle source
# File lib/enforce/dsl.rb, line 31
def no_folder(name)
  pass = !Dir.exist?(name)
  add_result message: "no folder `#{name}`", pass: pass
end
no_line(content) click to toggle source
# File lib/enforce/dsl.rb, line 61
def no_line(content)
  pass = !File.readlines(last_file).map(&:strip).include?(content)
  add_result message: "no line `#{content}`", pass: pass
end
no_regex(content) click to toggle source
# File lib/enforce/dsl.rb, line 51
def no_regex(content)
  pass = !File.read(last_file).match?(content)
  add_result message: "no_regex `#{content.inspect}`", pass: pass
end
no_text(content) click to toggle source
# File lib/enforce/dsl.rb, line 41
def no_text(content)
  pass = !File.read(last_file).include?(content)
  add_result message: "no_text `#{content}`", pass: pass
end
passed_results() click to toggle source
# File lib/enforce/dsl.rb, line 70
def passed_results
  results.select { |result| result[:pass] }
end
regex(content) click to toggle source
# File lib/enforce/dsl.rb, line 46
def regex(content)
  pass = File.read(last_file).match?(content)
  add_result message: "regex `#{content.inspect}`", pass: pass
end
results() click to toggle source
# File lib/enforce/dsl.rb, line 66
def results
  @results ||= []
end
text(content) click to toggle source
# File lib/enforce/dsl.rb, line 36
def text(content)
  pass = File.read(last_file).include?(content)
  add_result message: "text `#{content}`", pass: pass
end

Protected Instance Methods

add_result(result) click to toggle source
# File lib/enforce/dsl.rb, line 80
def add_result(result)
  results.push result unless results.include? result
  handle result
end
handle(result) click to toggle source
# File lib/enforce/dsl.rb, line 85
def handle(result)
  # Do nothing, should be overridden
end