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