class Jisota::Package::DSL

Public Class Methods

new(target) click to toggle source
# File lib/jisota/package.rb, line 21
def initialize(target)
  @target = target
end

Public Instance Methods

description(value) click to toggle source
# File lib/jisota/package.rb, line 25
def description(value)
  @target.description = value
end
param(name, options = {}) click to toggle source
# File lib/jisota/package.rb, line 29
def param(name, options = {})
  @target.params << Param.new(name, options)
end
run(&block) click to toggle source
# File lib/jisota/package.rb, line 39
def run(&block)
  run_block = ScriptBlock.new(&block)
  section = @target.sections.last
  if section && section.run_block.nil?
    section.run_block = run_block
  else
    @target.sections << Section.new.tap do |new_section|
      new_section.run_block = run_block
    end
  end
end
section(description) click to toggle source
# File lib/jisota/package.rb, line 33
def section(description)
  @target.sections << Section.new.tap do |section|
    section.description = description
  end
end
verify(&block) click to toggle source
# File lib/jisota/package.rb, line 51
def verify(&block)
  section = @target.sections.last
  if section.nil? || section.verify_block
    raise InvalidBlockOrder, "A verify block must come after a run block"
  end
  section.verify_block = ScriptBlock.new(&block)
end