def load!
      return if @all_commands
      contents = File.read @strainerfile
      contents.strip!
      contents.gsub! '$COOKBOOK', @cookbook.cookbook_name
      contents.gsub! '$SANDBOX',  Strainer.sandbox_path.to_s

      # Drop empty lines and comments
      lines = contents.split("\n")
      lines.reject!{ |line| line.strip.empty? || line.strip.start_with?('#') }
      lines.compact!
      lines ||= []

      # Parse the line and split it into the label and command parts
      #
      # @example Example Line
      #   foodcritic -f any phantomjs
      @all_commands = lines.collect{ |line| Command.new(line, @cookbook, @options) }
    end
def load!
      return if @all_commands
      contents = File.read @strainerfile
      contents.strip!
      contents.gsub! '$COOKBOOK', @cookbook.cookbook_name
      contents.gsub! '$SANDBOX',  Strainer.sandbox_path.to_s

      # Drop empty lines and comments
      lines = contents.split("\n")
      lines.reject!{ |line| line.strip.empty? || line.strip.start_with?('#') }
      lines.compact!
      lines ||= []

      # Parse the line and split it into the label and command parts
      #
      # @example Example Line
      #   foodcritic -f any phantomjs
      @all_commands = lines.collect{ |line| Command.new(line, @cookbook, @options) }
    end
Parse the given Strainerfile