1use strict; 2use warnings; 3 4use Test::More; 5use Prima::sys::Test; 6 7my $a = Prima::Drawable-> create( width => 1, height => 1, type => im::RGB); 8 9$a-> color( 0x123456); 10is( $a-> color, 0x123456, 'color' ); 11 12$a-> backColor( 0x654321); 13is( $a-> backColor, 0x654321, 'backColor' ); 14 15$a-> fillPattern( [0..7]); my $i = 0; 16my $fillPatternCount = scalar grep { $i++ != $_ } @{$a-> fillPattern}; 17is( $fillPatternCount, 0, 'fillPattern' ); 18 19$a-> fillPatternOffset( 5,4); 20my @fpo = $a-> fillPatternOffset; 21is( $fpo[0], 5, 'fillPatternOffset.x' ); 22is( $fpo[1], 4, 'fillPatternOffset.y' ); 23 24$a-> lineEnd( le::Square); 25is( $a-> lineEnd, le::Square, 'lineEnd' ); 26 27$a-> miterLimit( 5.0 ); 28is( int( $a-> miterLimit + .5), 5, 'miterLimit' ); 29 30$a-> lineWidth( 5); 31is( $a-> lineWidth, 5, 'lineWidth' ); 32 33$a-> linePattern( lp::Dash); 34is( $a-> linePattern, lp::Dash, 'linePattern' ); 35 36$a-> rop( rop::NotSrcXor); 37is( $a-> rop, rop::NotSrcXor, 'rop' ); 38 39$a-> rop2( rop::NotSrcXor); 40is( $a-> rop2, rop::NotSrcXor, 'rop2' ); 41 42$a-> translate( 1, 2); 43my @z = $a-> translate; 44is_deeply( \@z, [1,2], 'translate' ); 45 46$a-> textOpaque( 1); 47is( $a-> textOpaque, 1, 'textOpaque' ); 48 49$a-> textOutBaseline( 1); 50is( $a-> textOutBaseline, 1, 'textOutBaseline' ); 51 52$a-> lineJoin( lj::Bevel); 53is( $a-> lineJoin ,lj::Bevel, "lineJoin"); 54 55$a-> fillMode( fm::Alternate); 56is( $a-> fillMode, fm::Alternate, "fillMode"); 57 58$a-> begin_paint; 59$a-> end_paint; 60is( $a-> color, 0x123456, 'color' ); 61is( $a-> backColor, 0x654321, 'backColor' ); 62 63$i = 0; 64$fillPatternCount = scalar grep { $i++ != $_ } @{$a-> fillPattern}; 65is( $fillPatternCount, 0, "fillPattern" ); 66is( $a-> lineEnd, le::Square, "lineEnd" ); 67is( $a-> lineWidth, 5, "lineWidth" ); 68is( $a-> linePattern, lp::Dash, "linePattern" ); 69is( int( $a-> miterLimit + .5), 5, 'miterLimit' ); 70is( $a-> rop, rop::NotSrcXor, "rop" ); 71is( $a-> rop2 , rop::NotSrcXor, "rop2"); 72 73@z = $a-> translate; 74is_deeply( \@z, [1,2], "translate" ); 75is( $a-> textOpaque, 1, "textOpaque" ); 76is( $a-> textOutBaseline, 1, "textOutBaseline" ); 77is( $a-> lineJoin, lj::Bevel, "lineJoin" ); 78is( $a-> fillMode, fm::Alternate, "fillMode"); 79 80done_testing; 81