Regression testing: cairo mock object stores graphics calls

So the idea behind this is maintain an "expected value" for the sample runs. We store the graphics calls and their arguments as a readable text file. Any change in the samples will break this, but the idea is to make sure this doesn't get broken unexpectedly.

Rearranged the data files in specs
dev
Andy Meneely 2014-11-18 01:53:00 -05:00
parent 3c3d63e1ae
commit 99ac612b8a
35 changed files with 3080 additions and 36 deletions

View File

@ -26,7 +26,7 @@ describe Squib::Commands::New do
end
it 'creates a new template on an empty directory' do
Dir.mkdir('foo')
FileUtils.mkdir_p('foo')
@cmd.process(['foo'])
expect(File.exists?('foo/deck.rb')).to be true
end

View File

@ -0,0 +1,79 @@
=== autoscale_font.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["ShortBig"])
pango: width=([716800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Medium_Length_Name"])
pango: width=([716800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Super_Duper_Long_Name"])
pango: width=([716800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])

View File

@ -0,0 +1,204 @@
=== basic.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([75, 85])
cairo: rotate([0])
cairo: translate([-75, -85])
cairo: move_to([75, 85])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["1"])
pango: width=([131072])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([75, 85])
cairo: rotate([0])
cairo: translate([-75, -85])
cairo: move_to([75, 85])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["2"])
pango: width=([131072])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([75, 85])
cairo: rotate([0])
cairo: translate([-75, -85])
cairo: move_to([75, 85])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: width=([131072])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: translate([620, 75])
cairo: rotate([0])
cairo: translate([-620, -75])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 75])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([620, 75])
cairo: rotate([0])
cairo: translate([-620, -75])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 75])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([620, 218])
cairo: rotate([0])
cairo: translate([-620, -218])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 218])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([620, 218])
cairo: rotate([0])
cairo: translate([-620, -218])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 218])
cairo: paint([1.0])
cairo: restore([])

View File

@ -0,0 +1,14 @@
=== cairo_access.rb ===
cairo: save([])
cairo: set_source_color([:white])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([:white])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: circle([50, 50, 50])
cairo: set_source_color([:red])
cairo: fill([])
cairo: restore([])

View File

@ -0,0 +1,124 @@
=== colors.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 50])
cairo: rotate([0])
cairo: translate([-50, -50])
cairo: move_to([50, 50])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3-hex"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 100])
cairo: rotate([0])
cairo: translate([-50, -100])
cairo: move_to([50, 100])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3-hex (alpha)"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 150])
cairo: rotate([0])
cairo: translate([-50, -150])
cairo: move_to([50, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["6-hex"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.6, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 200])
cairo: rotate([0])
cairo: translate([-50, -200])
cairo: move_to([50, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["8-hex(alpha) *"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 250])
cairo: rotate([0])
cairo: translate([-50, -250])
cairo: move_to([50, 250])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["12-hex"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.6, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 300])
cairo: rotate([0])
cairo: translate([-50, -300])
cairo: move_to([50, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["12-hex (alpha)"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.8, @green=0.333333333333333, @blue=0.0>])
cairo: translate([50, 350])
cairo: rotate([0])
cairo: translate([-50, -350])
cairo: move_to([50, 350])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Symbols of constants too"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])

View File

@ -0,0 +1,45 @@
=== custom_config.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.8, @green=0.8, @blue=0.8>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([0, 78])
cairo: rotate([0])
cairo: translate([0, -78])
cairo: move_to([0, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["The Title"])
pango: width=([844800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([0, 78, 0, 0, 0, 0])
cairo: set_source_color(["#FF0000"])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: translate([620, 75])
cairo: rotate([0])
cairo: translate([-620, -75])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 75])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([620, 218])
cairo: rotate([0])
cairo: translate([-620, -218])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 218])
cairo: paint([1.0])
cairo: restore([])
cairo: set_source([#<Cairo::ImageSurface:>, 75, 75])
cairo: paint([])

View File

@ -0,0 +1,35 @@
=== draw_shapes.rb ===
cairo: save([])
cairo: rounded_rectangle([300, 300, 400, 400, 0, 0])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([50.0])
cairo: stroke([])
cairo: rounded_rectangle([300, 300, 400, 400, 0, 0])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=1.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: circle([600, 600, 75])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=1.0, @blue=0.0>])
cairo: set_line_width([8.0])
cairo: stroke([])
cairo: circle([600, 600, 75])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: triangle([50, 50, 150, 150, 75, 250])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: triangle([50, 50, 150, 150, 75, 250])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: move_to([50, 550])
cairo: line_to([150, 650])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([25.0])
cairo: stroke([])
cairo: restore([])

View File

@ -0,0 +1,166 @@
=== excel.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 65])
cairo: rotate([0])
cairo: translate([-65, -65])
cairo: move_to([65, 65])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["1"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 65])
cairo: rotate([0])
cairo: translate([-65, -65])
cairo: move_to([65, 65])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["2"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 65])
cairo: rotate([0])
cairo: translate([-65, -65])
cairo: move_to([65, 65])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 600])
cairo: rotate([0])
cairo: translate([-65, -600])
cairo: move_to([65, 600])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["A clever pickpocket on the street."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 600])
cairo: rotate([0])
cairo: translate([-65, -600])
cairo: move_to([65, 600])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["A sophisticated con artist who makes you run home for your wallet"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 600])
cairo: rotate([0])
cairo: translate([-65, -600])
cairo: move_to([65, 600])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["A brilliant mind devoted to a life of crime."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])

View File

@ -0,0 +1,35 @@
=== hello_world.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: move_to([0, 0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Hello"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: move_to([0, 0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["World!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])

View File

@ -0,0 +1,197 @@
=== layouts.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: circle([50, 50, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: circle([50, 50, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([125, 50])
cairo: rotate([0])
cairo: translate([-125, -50])
cairo: move_to([125, 50])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["The Title"])
pango: width=([640000])
pango: height=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([125, 50])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([125, 50, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: scale([0.9765625, 0.9765625])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([150, 250])
cairo: rotate([0])
cairo: translate([-150, -250])
cairo: set_source([#<Cairo::ImageSurface:>, 150, 250])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([350, 400])
cairo: rotate([0])
cairo: translate([-350, -400])
cairo: set_source([#<Cairo::ImageSurface:>, 350, 400])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([0.9765625, 0.9765625])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([550, 250])
cairo: rotate([0])
cairo: translate([-550, -250])
cairo: set_source([#<Cairo::ImageSurface:>, 550, 250])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([250, 600, 300, 200, 32, 32])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([250, 600, 300, 200, 32, 32])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([260.0, 610.0, 280.0, 180.0, 24.0, 24.0])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([260.0, 610.0, 280.0, 180.0, 24.0, 24.0])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([270.0, 620.0])
cairo: rotate([0])
cairo: translate([-270.0, -620.0])
cairo: move_to([270.0, 620.0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Extends!"])
pango: width=([266240.0])
pango: height=([163840.0])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([270.0, 620.0, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([150, 150])
cairo: rotate([0])
cairo: translate([-150, -150])
cairo: move_to([150, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["subtitle"])
pango: width=([588800])
pango: height=([61440])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([150, 150])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([150, 150, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([125, 50])
cairo: rotate([0])
cairo: translate([-125, -50])
cairo: move_to([125, 50])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["The Title"])
pango: width=([640000])
pango: height=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([125, 50])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([150, 150])
cairo: rotate([0])
cairo: translate([-150, -150])
cairo: move_to([150, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["The Subtitle"])
pango: width=([588800])
pango: height=([61440])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([150, 150])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([150, 500.0])
cairo: rotate([0])
cairo: translate([-150, -500.0])
cairo: move_to([150, 500.0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["The Description"])
pango: width=([588800])
pango: height=([61440])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([150, 500.0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])

View File

@ -0,0 +1,104 @@
=== load_images.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.043137254901960784, @green=0.48627450980392156, @blue=0.5568627450980392>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: translate([620, 75])
cairo: rotate([0])
cairo: translate([-620, -75])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 75])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([620, 218])
cairo: rotate([0])
cairo: translate([-620, -218])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 218])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.953125, 1.953125])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([50, 50])
cairo: rotate([0])
cairo: translate([-50, -50])
cairo: set_source([#<Cairo::ImageSurface:>, 50, 50])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([0.5859375, 0.5859375])
cairo: render_rsvg_handle([#<RSVG::Handle >, "#backdrop"])
cairo: save([])
cairo: translate([50, 350])
cairo: rotate([0])
cairo: translate([-50, -350])
cairo: set_source([#<Cairo::ImageSurface:>, 50, 350])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([0.9765625, 0.9765625])
cairo: render_rsvg_handle([#<RSVG::Handle >, "#backdrop"])
cairo: save([])
cairo: translate([50, 450])
cairo: rotate([0])
cairo: translate([-50, -450])
cairo: set_source([#<Cairo::ImageSurface:>, 50, 450])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([0.8021390374331551, 0.8032128514056225])
cairo: render_rsvg_handle([#<RSVG::Handle >, "#thing"])
cairo: save([])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: set_source([#<Cairo::ImageSurface:>, 0, 0])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([50, 700])
cairo: rotate([0])
cairo: translate([-50, -700])
cairo: set_source([#<Cairo::ImageSurface:>, 50, 700])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([70, 750])
cairo: rotate([0])
cairo: translate([-70, -750])
cairo: set_source([#<Cairo::ImageSurface:>, 70, 750])
cairo: operator=([:color_burn])
cairo: paint([0.75])
cairo: restore([])
cairo: save([])
cairo: translate([300, 700])
cairo: rotate([0.0])
cairo: translate([-300, -700])
cairo: set_source([#<Cairo::ImageSurface:>, 300, 700])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([300, 800])
cairo: rotate([0.7853981633974483])
cairo: translate([-300, -800])
cairo: set_source([#<Cairo::ImageSurface:>, 300, 800])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([300, 900])
cairo: rotate([1.4707963267948965])
cairo: translate([-300, -900])
cairo: set_source([#<Cairo::ImageSurface:>, 300, 900])
cairo: paint([1.0])
cairo: restore([])

View File

@ -0,0 +1,49 @@
=== portrait-landscape.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.6666666666666666, @green=0.6666666666666666, @blue=0.6666666666666666>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: move_to([0, 0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This is portrait"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.6666666666666666, @green=0.6666666666666666, @blue=0.6666666666666666>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: move_to([0, 0])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This is landscape"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: translate([412.5, 562.5])
cairo: rotate([1.5707963267948966])
cairo: translate([-562.5, -412.5])
cairo: set_source([#<Cairo::ImageSurface:>])
cairo: paint([])
surface: write_to_png(["_output/landscape_0.png"])

View File

@ -0,0 +1,424 @@
=== ranges.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["1"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["2"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([40, 128])
cairo: rotate([0])
cairo: translate([-40, -128])
cairo: move_to([40, 128])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thug"])
pango: width=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([40, 128])
cairo: rotate([0])
cairo: translate([-40, -128])
cairo: move_to([40, 128])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thinker"])
pango: width=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([40, 128])
cairo: rotate([0])
cairo: translate([-40, -128])
cairo: move_to([40, 128])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thinker"])
pango: width=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 200])
cairo: rotate([0])
cairo: translate([-25, -200])
cairo: move_to([25, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief and Grifter only!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 200])
cairo: rotate([0])
cairo: translate([-25, -200])
cairo: move_to([25, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief and Grifter only!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 250])
cairo: rotate([0])
cairo: translate([-25, -250])
cairo: move_to([25, 250])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief only!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 250])
cairo: rotate([0])
cairo: translate([-25, -250])
cairo: move_to([25, 250])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind only!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 650])
cairo: rotate([0])
cairo: translate([-25, -650])
cairo: move_to([25, 650])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter and Mastermind only!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 650])
cairo: rotate([0])
cairo: translate([-25, -650])
cairo: move_to([25, 650])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter and Mastermind only!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 300])
cairo: rotate([0])
cairo: translate([-25, -300])
cairo: move_to([25, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief and Mastermind only!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 300])
cairo: rotate([0])
cairo: translate([-25, -300])
cairo: move_to([25, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief and Mastermind only!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=0.0, @blue=0.0>])
cairo: translate([40, 700])
cairo: rotate([0])
cairo: translate([-40, -700])
cairo: move_to([40, 700])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["red"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=1.0, @blue=0.0>])
cairo: translate([80, 750])
cairo: rotate([0])
cairo: translate([-80, -750])
cairo: move_to([80, 750])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["green"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=1.0>])
cairo: translate([120, 800])
cairo: rotate([0])
cairo: translate([-120, -800])
cairo: move_to([120, 800])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["blue"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 400])
cairo: rotate([0])
cairo: translate([-25, -400])
cairo: move_to([25, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief through Grifter with id lookup!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 400])
cairo: rotate([0])
cairo: translate([-25, -400])
cairo: move_to([25, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief through Grifter with id lookup!!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 500])
cairo: rotate([0])
cairo: translate([-25, -500])
cairo: move_to([25, 500])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Only for Thinkers!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([25, 500])
cairo: rotate([0])
cairo: translate([-25, -500])
cairo: move_to([25, 500])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Only for Thinkers!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])

View File

@ -0,0 +1,547 @@
=== save_pdf.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.501960784313725, @green=0.501960784313725, @blue=0.501960784313725>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["1"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["2"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["4"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["5"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["6"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["7"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["8"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["9"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["10"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["11"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["12"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["13"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["14"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["15"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["16"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 75, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 831, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 1587, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 2343, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 75, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 831, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 1587, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 2343, 1131])
cairo: paint([])
cairo: show_page([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 75, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 831, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 1587, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 2343, 75])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 75, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 831, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 1587, 1131])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, -37, -37])
cairo: paint([])
cairo: set_source([#<Cairo::ImageSurface:>, 2343, 1131])
cairo: paint([])
cairo: show_page([])

View File

@ -0,0 +1,820 @@
=== text_options.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([15, 15, 795, 1095, 50, 50])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([30, 30, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Thief"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Grifter"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([250, 55])
cairo: rotate([0])
cairo: translate([-250, -55])
cairo: move_to([250, 55])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.8, @green=0.333333333333333, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["1"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.8, @green=0.333333333333333, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["2"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.8, @green=0.333333333333333, @blue=0.0>])
cairo: translate([65, 40])
cairo: rotate([0])
cairo: translate([-65, -40])
cairo: move_to([65, 40])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 150])
cairo: rotate([0])
cairo: translate([-565, -150])
cairo: move_to([565, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["UTF-8 \u2663"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 150])
cairo: rotate([0])
cairo: translate([-565, -150])
cairo: move_to([565, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["UTF-8 \u2663"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 150])
cairo: rotate([0])
cairo: translate([-565, -150])
cairo: move_to([565, 150])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["UTF-8 \u2663"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 200])
cairo: rotate([0])
cairo: translate([-65, -200])
cairo: move_to([65, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 200])
cairo: rotate([0])
cairo: translate([-65, -200])
cairo: move_to([65, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 200])
cairo: rotate([0])
cairo: translate([-65, -200])
cairo: move_to([65, 200])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 300])
cairo: rotate([0])
cairo: translate([-65, -300])
cairo: move_to([65, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 300])
cairo: rotate([0])
cairo: translate([-65, -300])
cairo: move_to([65, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 300])
cairo: rotate([0])
cairo: translate([-65, -300])
cairo: move_to([65, 300])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font strings are expressive!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 350])
cairo: rotate([0])
cairo: translate([-65, -350])
cairo: move_to([65, 350])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font string sizes can be overridden per card."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 350])
cairo: rotate([0])
cairo: translate([-65, -350])
cairo: move_to([65, 350])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font string sizes can be overridden per card."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 350])
cairo: rotate([0])
cairo: translate([-65, -350])
cairo: move_to([65, 350])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Font string sizes can be overridden per card."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
pango: width=([307200])
pango: height=([204800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
pango: width=([307200])
pango: height=([204800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 400])
cairo: rotate([0])
cairo: translate([-65, -400])
cairo: move_to([65, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This text has fixed width, fixed height, center-aligned, middle-valigned, and has a red hint"])
pango: width=([307200])
pango: height=([204800])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 400, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([450, 400])
cairo: rotate([0])
cairo: translate([-450, -400])
cairo: move_to([450, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Ellipsization!\\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
pango: width=([286720])
pango: height=([184320])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
cairo: set_source_color([:green])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([450, 400])
cairo: rotate([0])
cairo: translate([-450, -400])
cairo: move_to([450, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Ellipsization!\\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
pango: width=([286720])
pango: height=([184320])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
cairo: set_source_color([:green])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([450, 400])
cairo: rotate([0])
cairo: translate([-450, -400])
cairo: move_to([450, 400])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Ellipsization!\\nThe ultimate question of life, the universe, and everything to life and everything is 42"])
pango: width=([286720])
pango: height=([184320])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([450, 400, 0, 0, 0, 0])
cairo: set_source_color([:green])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 625])
cairo: rotate([0])
cairo: translate([-65, -625])
cairo: move_to([65, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Text hints are also globally togglable!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 625])
cairo: rotate([0])
cairo: translate([-65, -625])
cairo: move_to([65, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Text hints are also globally togglable!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 625])
cairo: rotate([0])
cairo: translate([-65, -625])
cairo: move_to([65, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Text hints are also globally togglable!"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([65, 625, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 625])
cairo: rotate([0])
cairo: translate([-565, -625])
cairo: move_to([565, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["See? No hint here."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 625])
cairo: rotate([0])
cairo: translate([-565, -625])
cairo: move_to([565, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["See? No hint here."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 625])
cairo: rotate([0])
cairo: translate([-565, -625])
cairo: move_to([565, 625])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["See? No hint here."])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 675])
cairo: rotate([0.2])
cairo: translate([-565, -675])
cairo: move_to([565, 675])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Rotated"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 675])
cairo: rotate([0.2])
cairo: translate([-565, -675])
cairo: move_to([565, 675])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Rotated"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([565, 675])
cairo: rotate([0.2])
cairo: translate([-565, -675])
cairo: move_to([565, 675])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Rotated"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([565, 675, 0, 0, 0, 0])
cairo: set_source_color([:red])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 700])
cairo: rotate([0])
cairo: translate([-65, -700])
cairo: move_to([65, 700])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
pango: width=([691200.0])
pango: height=([307200])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([true])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 700])
cairo: rotate([0])
cairo: translate([-65, -700])
cairo: move_to([65, 700])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
pango: width=([691200.0])
pango: height=([307200])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([true])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([65, 700])
cairo: rotate([0])
cairo: translate([-65, -700])
cairo: move_to([65, 700])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["This is left-justified text.\nWhat do you know about tweetle beetles? well... \nWhen tweetle beetles fight, it's called a tweetle beetle battle. And when they battle in a puddle, it's a tweetle beetle puddle battle. AND when tweetle beetles battle with paddles in a puddle, they call it a tweetle beetle puddle paddle battle. AND... When beetles battle beetles in a puddle paddle battle and the beetle battle puddle is a puddle in a bottle... ..they call this a tweetle beetle bottle puddle paddle battle muddle. AND... When beetles fight these battles in a bottle with their paddles and the bottle's on a poodle and the poodle's eating noodles... ...they call this a muddle puddle tweetle poodle beetle noodle bottle paddle battle."])
pango: width=([691200.0])
pango: height=([307200])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([true])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 1000])
cairo: rotate([0])
cairo: translate([-50, -1000])
cairo: move_to([50, 1000])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: width=([768000])
pango: height=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([50, 1000])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 1000])
cairo: rotate([0])
cairo: translate([-50, -1000])
cairo: move_to([50, 1000])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: width=([768000])
pango: height=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([50, 1000])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([50, 1000])
cairo: rotate([0])
cairo: translate([-50, -1000])
cairo: move_to([50, 1000])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: markup=(["<b>Markup</b> is also <i>quite</i> <s>easy</s> awesome"])
pango: width=([768000])
pango: height=([102400])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: move_to([50, 1000])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: rounded_rectangle([50, 1000, 0, 0, 0, 0])
cairo: set_source_color([:cyan])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: restore([])

View File

@ -0,0 +1,81 @@
=== tgc_proofs.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([38, 38, 750, 1050, 38, 38])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([75, 75, 128, 128, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([220, 78])
cairo: rotate([0])
cairo: translate([-220, -78])
cairo: move_to([220, 78])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["Mastermind"])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment left>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: translate([75, 85])
cairo: rotate([0])
cairo: translate([-75, -85])
cairo: move_to([75, 85])
pango: font_description=([#<Pango::FontDescription own=true>])
pango: text=(["3"])
pango: width=([131072])
pango: wrap=([#<Pango::Layout::WrapMode word-char>])
pango: ellipsize=([#<Pango::Layout::EllipsizeMode end>])
pango: alignment=([#<Pango::Layout::Alignment center>])
pango: justify=([false])
pango: spacing=([0])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: update_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: show_pango_layout([#<RSpec::Mocks::Double: @name=Pango::Layout>])
cairo: restore([])
cairo: save([])
cairo: translate([620, 75])
cairo: rotate([0])
cairo: translate([-620, -75])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 75])
cairo: paint([1.0])
cairo: restore([])
cairo: scale([1.0, 1.0])
cairo: render_rsvg_handle([#<RSVG::Handle >, nil])
cairo: save([])
cairo: translate([620, 218])
cairo: rotate([0])
cairo: translate([-620, -218])
cairo: set_source([#<Cairo::ImageSurface:>, 620, 218])
cairo: paint([1.0])
cairo: restore([])
cairo: save([])
cairo: translate([0, 0])
cairo: rotate([0])
cairo: translate([0, 0])
cairo: set_source([#<Cairo::ImageSurface:>, 0, 0])
cairo: paint([0.5])
cairo: restore([])

View File

@ -0,0 +1,40 @@
=== units.rb ===
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=1.0, @green=1.0, @blue=1.0>])
cairo: paint([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])
cairo: save([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=1.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: set_line_width([2.0])
cairo: stroke([])
cairo: rounded_rectangle([37.5, 37.5, 750.0, 1050.0, 25, 25])
cairo: set_source_color([#<Cairo::Color::RGB: @alpha=0.0, @red=0.0, @green=0.0, @blue=0.0>])
cairo: fill([])
cairo: restore([])

View File

@ -48,7 +48,7 @@ describe Squib::Deck do
context '#load_layout' do
it 'loads a normal layout with no extends' do
d = Squib::Deck.new(layout: test_file('no-extends.yml'))
d = Squib::Deck.new(layout: layout_file('no-extends.yml'))
expect(d.layout).to \
eq({'frame' => {
'x' => 38,
@ -61,7 +61,7 @@ describe Squib::Deck do
end
it 'loads with a single extends' do
d = Squib::Deck.new(layout: test_file('single-extends.yml'))
d = Squib::Deck.new(layout: layout_file('single-extends.yml'))
expect(d.layout).to \
eq({'frame' => {
'x' => 38,
@ -78,7 +78,7 @@ describe Squib::Deck do
end
it 'applies the extends regardless of order' do
d = Squib::Deck.new(layout: test_file('pre-extends.yml'))
d = Squib::Deck.new(layout: layout_file('pre-extends.yml'))
expect(d.layout).to \
eq({'frame' => {
'x' => 38,
@ -95,7 +95,7 @@ describe Squib::Deck do
end
it 'applies the single-level extends multiple times' do
d = Squib::Deck.new(layout: test_file('single-level-multi-extends.yml'))
d = Squib::Deck.new(layout: layout_file('single-level-multi-extends.yml'))
expect(d.layout).to \
eq({'frame' => {
'x' => 38,
@ -118,7 +118,7 @@ describe Squib::Deck do
end
it 'applies multiple extends in a single rule' do
d = Squib::Deck.new(layout: test_file('multi-extends-single-entry.yml'))
d = Squib::Deck.new(layout: layout_file('multi-extends-single-entry.yml'))
expect(d.layout).to \
eq({'aunt' => {
'a' => 101,
@ -143,7 +143,7 @@ describe Squib::Deck do
end
it 'applies multi-level extends' do
d = Squib::Deck.new(layout: test_file('multi-level-extends.yml'))
d = Squib::Deck.new(layout: layout_file('multi-level-extends.yml'))
expect(d.layout).to \
eq({'frame' => {
'x' => 38,
@ -166,26 +166,26 @@ describe Squib::Deck do
end
it 'fails on a self-circular extends' do
file = test_file('self-circular-extends.yml')
file = layout_file('self-circular-extends.yml')
expect { Squib::Deck.new(layout: file) }.to \
raise_error(RuntimeError, 'Invalid layout: circular extends with \'a\'')
end
it 'fails on a easy-circular extends' do
file = test_file('easy-circular-extends.yml')
file = layout_file('easy-circular-extends.yml')
expect { Squib::Deck.new(layout: file) }.to \
raise_error(RuntimeError, 'Invalid layout: circular extends with \'a\'')
end
it 'hard on a easy-circular extends' do
file = test_file('hard-circular-extends.yml')
file = layout_file('hard-circular-extends.yml')
expect { Squib::Deck.new(layout: file) }.to \
raise_error(RuntimeError, 'Invalid layout: circular extends with \'a\'')
end
it 'redefines keys on multiple layouts' do
a = test_file('multifile-a.yml')
b = test_file('multifile-b.yml')
a = layout_file('multifile-a.yml')
b = layout_file('multifile-b.yml')
d = Squib::Deck.new(layout: [a, b])
expect(d.layout).to eq({
'title' => { 'x' => 300 },
@ -195,8 +195,8 @@ describe Squib::Deck do
end
it 'evaluates extends on each file first' do
a = test_file('multifile-extends-a.yml')
b = test_file('multifile-extends-b.yml')
a = layout_file('multifile-extends-a.yml')
b = layout_file('multifile-extends-b.yml')
d = Squib::Deck.new(layout: [a, b])
expect(d.layout).to eq({
'grandparent' => { 'x' => 100 },

13
spec/method_log_proxy.rb Normal file
View File

@ -0,0 +1,13 @@
class MethodLogProxy
def initialize(strio, client)
@strio = strio
@client = client
end
# Any method called on the client will just be logged and passed through
def method_missing(m, *args, &block)
@strio << "#{method}(#{args})\n"
client.send(m,args)
end
end

View File

@ -0,0 +1,44 @@
require 'spec_helper'
require 'squib'
require 'pp'
require 'method_log_proxy'
describe Squib do
context 'samples' do
it 'should execute with no errors' do
allow(ProgressBar).to receive(:create).and_return(Squib::DoNothing.new)
samples = File.expand_path('../../samples', File.dirname(__FILE__))
Dir["#{samples}/**/*.rb"].each do |sample|
Dir.chdir(samples) do #to save to _output
load sample
end
end
end
it 'did not change against regression logs' do
samples = File.expand_path('../../samples', File.dirname(__FILE__))
Dir["#{samples}/**/*.rb"].each do |sample|
sample_name = File.basename(sample)
header = "=== #{sample_name} ===\n"
Dir.chdir(samples) do #to save to _output
strio = StringIO.new
strio << header
mock_cairo(strio)
load sample
test_file_str = ""
# Use this to overwrite the regression with current state
# Use ONLY temporarily after you are happy with the new sample log
# File.open(sample_regression_file(sample_name), 'w+') do |f|
# f.write(strio.string) # write back out to expected file
# end
test_file_str << File.open(sample_regression_file(sample_name)).read
expect(strio.string).to eq(test_file_str)
end
end
end
end
end

View File

@ -1,20 +0,0 @@
require 'spec_helper'
require 'squib'
require 'pp'
describe Squib do
context 'all samples run without error' do
it 'should execute with no errors' do
p = double('ProgressBar')
allow(ProgressBar).to receive(:create).and_return(Squib::DoNothing.new)
samples = File.expand_path('../samples', File.dirname(__FILE__))
Dir["#{samples}/**/*.rb"].each do |sample|
Dir.chdir(samples) do #to save to _output
require_relative "../samples/#{File.basename(sample)}"
end
end
end
end
end

View File

@ -15,8 +15,51 @@ RSpec.configure do |config|
end
end
def test_file(str)
"#{File.expand_path(File.dirname(__FILE__))}/data/#{str}"
def layout_file(str)
"#{File.expand_path(File.dirname(__FILE__))}/data/layouts/#{str}"
end
def sample_regression_file(file)
"#{File.expand_path(File.dirname(__FILE__))}/data/samples/#{file}.txt"
end
def scrub_hex(str)
str.gsub(/0x\w{7,8}/,'')
.gsub(/ptr=.{8}/,'')
.gsub(/FontDescription:.{8}/,'FontDescription')
.gsub(/Handle:.{8}/,'Handle')
# .gsub(/RGB:./,'RGB:')
end
# Build a mock cairo instance that allows basically any method
# and logs that call to the string buffer
def mock_cairo(strio)
cxt = double(Cairo::Context)
surface = double(Cairo::ImageSurface)
pango = double(Pango::Layout)
allow(ProgressBar).to receive(:create).and_return(Squib::DoNothing.new)
allow(Cairo::Context).to receive(:new).and_return(cxt)
allow(cxt).to receive(:create_pango_layout).and_return(pango)
allow(cxt).to receive(:target).and_return(surface)
allow(pango).to receive(:height).and_return(25)
allow(pango).to receive(:width).and_return(25)
allow(pango).to receive(:extents).and_return([Pango::Rectangle.new(0,0,0,0)]*2)
%w(save set_source_color paint restore translate rotate move_to
update_pango_layout width height show_pango_layout rounded_rectangle
set_line_width stroke fill set_source scale render_rsvg_handle circle
triangle line_to operator= show_page).each do |m|
allow(cxt).to receive(m) { |*args| strio << scrub_hex("cairo: #{m}(#{args})\n") }
end
%w(font_description= text= width= height= wrap= ellipsize= alignment=
justify= spacing= markup=).each do |m|
allow(pango).to receive(m) {|*args| strio << scrub_hex("pango: #{m}(#{args})\n") }
end
%w(write_to_png).each do |m|
allow(surface).to receive(m) { |*args| strio << scrub_hex("surface: #{m}(#{args})\n") }
end
end
# Refine Squib to allow setting the logger and progress bar