Sha256: b9c9eaba75d4c0ac351c5aa1b973fc88efc2b4cbab714c7ad2c0bf8a55fb6d05
Contents?: true
Size: 1.37 KB
Versions: 8
Compression:
Stored size: 1.37 KB
Contents
gem "prawn", "~> 0.4" require "prawn" module Stories class Runner::PDF < Runner def render_header(pdf) end def finished(elapsed_time) super Prawn::Document.generate("stories.pdf", :page_size => "A4") do |pdf| render_header(pdf) pdf.text "User Acceptance Tests", :size => 20, :style => :bold pdf.move_down(15) $stories.each do |story| pdf.text story.name, :style => :bold story.scenarios.each_with_index do |scenario,i| scenario_leading = 15 pdf.span(pdf.bounds.width - scenario_leading, :position => scenario_leading) do pdf.text "— #{scenario.name}" pdf.fill_color "666666" unless scenario.steps.empty? && scenario.assertions.empty? pdf.span(pdf.bounds.width - 30, :position => 30) do pdf.font_size(9) do render_many(pdf, scenario.steps) render_many(pdf, scenario.assertions) end end end pdf.move_down(5) unless i + 1 == story.scenarios.size pdf.fill_color "000000" end end pdf.move_down(10) end end end def render_many(pdf, elements) elements.each do |el| pdf.text el.to_s end end end end
Version data entries
8 entries across 8 versions & 2 rubygems