Sha256: 424e1a416982d86ae72f15479ff0fc391dcec0db44b36349ee38d0a15b817010
Contents?: true
Size: 894 Bytes
Versions: 4
Compression:
Stored size: 894 Bytes
Contents
module JobSpec class RenderAsMarkdown attr_reader :role def initialize(role) @role = role end def render markdown = [] markdown << "# #{role.name}" markdown << role.description unless role.description.nil? grouped_expectations.each do |group, expectations| if group.nil? markdown << '## Expectations' unless role.expectations.empty? else markdown << "## #{group}" end expectations.map(&:values).each do |(expectation, description)| markdown << "### #{expectation[0].upcase}#{expectation[1..expectation.length]}" markdown << description unless description.nil? end end markdown.join("\n\n") end private def grouped_expectations role.expectations.group_by do |expectations| expectations[:group] end end end end
Version data entries
4 entries across 4 versions & 1 rubygems