class PostmanMarkdoc::MarkdownGenerator

Attributes

content[R]
data[R]

Public Class Methods

generate(*args) click to toggle source
# File lib/postman_markdoc/markdown_generator.rb, line 3
def self.generate(*args)
  generator = self.new(*args)
  generator.generate
  generator
end
new(options = {}) click to toggle source
# File lib/postman_markdoc/markdown_generator.rb, line 11
def initialize(options = {})
  @data = options[:data]
  @content = options[:content] || ""
end

Public Instance Methods

generate() click to toggle source
# File lib/postman_markdoc/markdown_generator.rb, line 16
def generate
  collection = PostmanMarkdoc::CollectionParser.new(data)
  @content << "## #{collection.name}\n\n"
  if collection.description != nil
    @content << "#{collection.description}\n\n"
  end
  collection.requests.each do |request|
    @content << "### #{request.method} #{request.name}\n\n"
    @content << "```\n#{request.url}\n```\n\n"
    if request.description. != nil
      @content << "#{request.description}\n\n"
    end
    if request.headers != []
      @content << "#### Headers\n\n```\n"
      request.headers.each do |header|
        @content << header['key']
        @content << "\t\t\t\t\t"
        @content << header['value']
        @content << "\n"
      end
      @content << "```\n\n"
    end
    @content << "#### Body\n\n```\n#{request.body}\n```\n\n"
  end
end