From a2d852497364afa742518ac0d9feb0466dccc191 Mon Sep 17 00:00:00 2001 From: Chris Wilson Date: Tue, 4 Jun 2013 11:34:31 +0100 Subject: [PATCH] test: Expand testing of caps for fine strokes --- test/caps.c | 57 +++++++++++++++++++++++++-- test/reference/caps-05.ref.png | Bin 0 -> 1375 bytes test/reference/caps-05.traps.ref.png | Bin 0 -> 1126 bytes test/reference/caps-1.ref.png | Bin 0 -> 1457 bytes test/reference/caps-1.traps.ref.png | Bin 0 -> 1268 bytes test/reference/caps-2.ref.png | Bin 0 -> 1509 bytes test/reference/caps-2.traps.ref.png | Bin 0 -> 1231 bytes 7 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 test/reference/caps-05.ref.png create mode 100644 test/reference/caps-05.traps.ref.png create mode 100644 test/reference/caps-1.ref.png create mode 100644 test/reference/caps-1.traps.ref.png create mode 100644 test/reference/caps-2.ref.png create mode 100644 test/reference/caps-2.traps.ref.png diff --git a/test/caps.c b/test/caps.c index 7f5611791..cde2773f9 100644 --- a/test/caps.c +++ b/test/caps.c @@ -45,14 +45,13 @@ make_path (cairo_t *cr) } static cairo_test_status_t -draw (cairo_t *cr, int width, int height) +draw (cairo_t *cr) { cairo_save (cr); cairo_set_source_rgb (cr, 1.0, 1.0, 1.0); /* white */ cairo_paint (cr); cairo_restore (cr); - cairo_set_line_width (cr, LINE_WIDTH); cairo_translate (cr, PAD + SIZE / 2., PAD + SIZE / 2.); cairo_set_line_cap (cr, CAIRO_LINE_CAP_BUTT); @@ -77,11 +76,63 @@ draw (cairo_t *cr, int width, int height) return CAIRO_TEST_SUCCESS; } +static cairo_test_status_t +draw_10 (cairo_t *cr, int width, int height) +{ + cairo_set_line_width (cr, LINE_WIDTH); + return draw (cr); +} + +static cairo_test_status_t +draw_2 (cairo_t *cr, int width, int height) +{ + cairo_set_line_width (cr, 2); + return draw (cr); +} + +static cairo_test_status_t +draw_1 (cairo_t *cr, int width, int height) +{ + cairo_set_line_width (cr, 1); + return draw (cr); +} + +static cairo_test_status_t +draw_05 (cairo_t *cr, int width, int height) +{ + cairo_set_line_width (cr, 0.5); + return draw (cr); +} + CAIRO_TEST (caps, "Test caps", "stroke caps", /* keywords */ NULL, /* requirements */ PAD + SIZE + PAD, 3 * (PAD + SIZE) + PAD, - NULL, draw) + NULL, draw_10) + +CAIRO_TEST (caps_2, + "Test normal caps", + "stroke caps", /* keywords */ + NULL, /* requirements */ + PAD + SIZE + PAD, + 3 * (PAD + SIZE) + PAD, + NULL, draw_2) + +CAIRO_TEST (caps_1, + "Test hairline caps", + "stroke caps", /* keywords */ + NULL, /* requirements */ + PAD + SIZE + PAD, + 3 * (PAD + SIZE) + PAD, + NULL, draw_1) + +CAIRO_TEST (caps_05, + "Test fine caps", + "stroke caps", /* keywords */ + NULL, /* requirements */ + PAD + SIZE + PAD, + 3 * (PAD + SIZE) + PAD, + NULL, draw_05) diff --git a/test/reference/caps-05.ref.png b/test/reference/caps-05.ref.png new file mode 100644 index 0000000000000000000000000000000000000000..946adcbfa42d28fd30d0c3c658abbfd12c4a59ef GIT binary patch literal 1375 zcmeAS@N?(olHy`uVBq!ia0vp^Q9%5Rg9%99I>Z_cq}Y|gW!U_%O^81u!?xP zIEGZrd3(pvPbpfW?O~R4lGAaC$3b%>+4=6Y&Tf!Yk?`Q@ZgAbf=v$B=Gr=N3)`7#r z@bCMEnErUh2#2ed&+qMdAF;~cUUz{*ef=4oh4t2)wGBI(oC(9OrpI4F!1RmeBo(2) z3WN@=d5iDA*B9$Pq(3`zW5k!=e-G(L+Z_M&d=6-Fk!;yZuQBYYr~@TrnAfCr7tbGF;D5IrPtOCpDc3ZC(e;c zjgD9;Gc8($znz_1d-mZ^oqtX}JbuWgAcAk=U7342XZYLys%>gMyu7vY@rJodw=Ha< zXZZ8o*88N~UeEpcOk%W)nPpSNjC#J`o+^hoZu7W&<^N5lf*Wlo%KI9`#JUcLJn2?m z)5`i}L%vdW-vhCC+$8XPke| z&(H5U$;QrZ-u(IU^#^zF-rbxZZTXCU-;Ny?&z`;Z0|I~l>*3lhk7qF5k6d;+bNlVs z|J8Q(_S>V@0*z>R&iOOIYNpStuT`^_y>7o`;`_adcWqBoVNK+X?drE4C?#6#i=OdM zLM%*$;dq73zq~|g`z7omAI}=f^_$mUyY)v@Z%RjapS*6)Y5gCLE`JJh?z!)~_3e}Y ztYu%T?k?|8?~@hV_W7vec_llGvgjN6`m(=8H0M4J=RW=MSd;n0BFj$^5&O2!{nIh! z#Kg;oiuP;n6qD>f&MK4Vom!Yv?e}-%pZv)6^J`BFYqloqbKm~V%)7KpA)AGF!)ex~33C46K1_U(=552~{pA5?@v z*N-mJ{x#(u1q5MW!J4quSF=QaiFgWe9xt$v;cH*$KT&03!4Y8@At(&`D04UO`gx;} z?YDLR?P{&Rm2+QK<@W!@MNj|o*G^lgLNr=(*b->j@87>as%z9pzWVj+SHk7P(-)r6 zIhVR3dEfoWwo6QQc^i42CP|(;YBZ%gRYUxAfZnu)F*?pWBif3vN_g&#I}dc(`s><% zP6hIWZQv2jM0h&T=HjxZ_cq}Y|gW!U_%O^81utWA7B9@XQC86Vjle`xM?r>2M5VZ90zxpF?;;pr{ zd%3M8tCmIY@z396yZ*%eFXvr*HeS@X_u^lm_l%*q!SaAi0-pi<4CXV8m|O=@%WuE` z*6r7~?OL`{#oZRJW`h0kvfa72&3<22yS43Z-u9dG&FcGZ=4^}6bJxAJ?QPM{IcL*; z&bR7QX!-Evi-^;UpYO|e1C>d?JbB*8tFPkOg5S?2wz|sbyW6C{ur2PntJF73`P;q* zJ4>|;!QHnF)4X!#u~)?H|dKYT#{jXQl z`~NI0*B;ond$+c&KtA6jc$BRAv0!a`y)5qdfyCYlCHL#4vDc@{xn2&L^tix6hOhn7 z;*42dMOO~P8F;)c+4!CnS09hhUWAa%kLbRSXAwQ z>TJB`cD7}AEM^r&7oPHcuGz2RQJLVn>d<2!n>TE2&tL3%_xJDL-^wTIjIO+W`}XP6 zryGt}6${jC3^@3GE!TaozYAFRw>8FJIyk@J0e{VhZ~PU-0((k%{B#;F`#o5qVv)+L zm%%W7H!wt2U(K2|d12VdEfBsq1{w44zC+|F-P))dN xLq0lI-}-4<@k(d07BCjYxv^(YMCPqy+A^y>Df0fo3Shy(;OXk;vd$@?2>?%U3|IgF literal 0 HcmV?d00001 diff --git a/test/reference/caps-1.ref.png b/test/reference/caps-1.ref.png new file mode 100644 index 0000000000000000000000000000000000000000..dfb111808a646a9137f9f7c80e3365e877a7050f GIT binary patch literal 1457 zcmeAS@N?(olHy`uVBq!ia0vp^Q9%5Rg9%99I>Z_cq}Y|gW!U_%O^81u%>ys zIEGZrd3$%ipHjBWv5(~^#7t&MaGEce*yX0prmJ=-b5ZMmuf#m3wHkX_bKh)ilzeLt z<*;Ij*dbPlye8dy#b+w{c1xE(`~FXJp8wX~!%wt341VNnh|m%FyZXT|mOqDN8Y~%# z8J;nmVVuEiz@ET&0GmLAxaF<4WxMZ|)rxslPC6`)Q0!oFJZYnag+)bm^<>*Oo33BK ze)zESN9|RIESnT|?A&Q-X<1oSHOcl<{nE@TAgHaCWodjf@u|Gd*Q&kOU&qG9Noh@5 zmbv-no3B-0t788=aH}hup`Em))#&@;D=vbUb*EfR7rUt>7Nv37e@ndUC6lwoGS<3N zTJKwzOibH6b7#j^u~X;PCsuad$XU4NZ`iE09Z$thJ=1?#AAO{bJN2jO>F?bZnG4_S zZ~5&f7_K{Ia`={dJ)nK7uNGZ$+F8~3f45Rzw8m1V_W4$FeC_V;?)?1x@87@oS~+*_ zT%hqPo)T^A{5*B%y!!roY0%1x8E@XdpYFAE`gHN_&nLgWS6Es)_5W`}89w&r#-ObH zeE%nPh1J!we`eP|+4*qm)~z=2>(;JY_o{x)nl&9V2IAYx{qD=@=-s#SyZq(RBPaX* zH}Bp7!}Rm#&vVw-78gx>{Mz#C>*uX?-*UG`@pbPwIZ@^0|EP>aiCwyn6x=7N6w2st zzfdyK=6(N@MC;@8qk%GNo{yGvT$Q<>xp1delK%1U(HVYS5vM+G*ERX=n)BquHK)t2 zYizGeoS(S7_1o7svsF6Z?9?@$tz6ITE8h9|Mu}jv<&vn3vaT7Y6mL6i4mje$C#-97 z+4V{BjO>Myx=Q~OSM1)s`}lG9#qZ185^uaLdH4Rk_@(?W&#KIGA_Z8^pFh9p_@AX3 zU5hk?>~-udIS}cm;dJ&Exkr0(rzfNo_d)4+g^gVQ@pb2&G(UDvy7{8}{O#Mf*ZCjm zuWq-88R=km{Q2|cKMdF2olwyCvnFnB*jpXv(A8Ie*63A7Jd}A_wDb1cTaj(A%6303 ziu`sWrj3a> z-75AhuVcP8D=bSrI2vy)D=)v>uC=~EgZsllCRiBY&Zm1$Tzvoi_uqZ5HwT=WEYp0@ z;s3>^;Or&n^GyCoSrTge2VAvf^ zGW;#RdvEctZwU{LL>>^01kM@G^Z~lZS55e)GBs|!3BsVAL zgj|?~y8w$=RE8Q_2pWYv>rQ(FjHw?9jIeOUTCPFUVI9-#a3*oXI6E0&8O-46>gTe~ HDWM4fh~Z_cq}Y|gW!U_%O^81u&nfS zaSW-L^LEZ|KV?q_hH8Ithm4#18=m$EJjpORu#>s&NR$1BKgulU8qYX4DU`IGF}F}q z`NZ~S?Ya+dyXL+;{vu?mzyInP8`E$3*4}J^T9{+=tf5x_)d9M?19(2U@#DA{uqRLBS zT9op)>^Bd(;HvSp>A$veYHUl>YuVp!UAs9HTVeylR$ompu&}nawzZYzVOxE5)tj1q zZ=>FL?%%a5>;Lx^uYdjgY1vXxR3!9t*NpSed;9a&@y*{Jb;_0{TPn>@=cw%L`}TgNW$%)!g0JV=&Ysv}^=MuE z6T?Yf?p<5w@VHHS;jw+))LR}kvMaCum?YJ?K6zurlDPMO3^qmREb70LW%|Z`=ia@& zcF*kOy;Ux@mp)erV28nsuiAJ1^RMSyKoDNwlzsiRYH!^1d9ECqbyIQ<+`W7E_U+pr zKNi01EP4D25z`+_bGF}pk(_27m?8^IJSI|4HJy9i7Qb*)di~=2Z^^Rye|LJXzyJQY zFGrFqqK#?V!iH3h1l&xe)W=4#-FHpyPu>@|K0hz-)_>bY(--RL>r4MnNtW!Ive#mF z*=8clfmkF^ZyeJ0_1t{7Mfq)AdpLLBf4_gv9+&%zxA=#KYWj)%PXnf_yPbE!xvnrm zpw-9we&XWdOP7COc8)wSn{@>vxZcgm(NF8U!(*XyJ zL^klS;%9d3m()s^)cTdS;>5wOhXp@={HQ1?5h=e>yK0qJ;i4br-fZG8{hsU#f~A}b vokk&{q3_?n2l~7zb%lS$W`Z_cq}Y|gW!U_%O^81u+H*y zaSW-L^Y*T_zmc!Rv5%3aW-7N<+;`BhQB?}zC~4DQwD8g9%*=G9I`(QsMzhF`uHWjo zKO4m;x7(gM_bz!|{Z|v6$NDlUGoD`)7CibdU;RC+h<1^~lZF$F6PcCRUHCd=1S}P> z3UD2KSUK-`W#xLOl}!aA>M%8%&Ku74tG&OyE>ija_x=0!t%<*8)c*eW+p^skGkDsa zcZbL2S;&}4^@goZy?fWlU7~IC%{PDl?!Ejn<%`5jAGNuD&;S1Y`}?;wkMrqp@!PD9 z1;xdSr>qLmYCfoN%6HNF6a$G6EzzYRYs0vk6z+P3uRZchRCS++OWzt@6=l9oO`+Dq zjjbui6$@Rq74fh&7ww$0wKe6G;zU=oVvEfa)>x{{I>E*_UF=bVvrCi0imO@DF4qbz zwh5TaZ1PP}ZLj7oJfb_5G5_kI_p`Q;=+;#f&NMPc}ikiB*byIfj*zx1xkDten9z9xNb1pk{XW@xSCl=M{ zx*VA-l75N%)6!_H2iYMcx0p zjTLjA={=g2oEW(Ny7>NVUHjb6qJ^h6UUI6dZ8;ryME1B9cjQ+_dwoH78F_j6*E%U@ zzxnGa=~>v>+4=eVUynTT>#XB7atd=we;Ni^X`iSFHK#Sr~k^$VT;$&OD9iyt_-QFtFyDQ z*;4&+eqVn-P~p3G@4S`z{V`;Av-WJi<-mx4@j~O6l8yh-J6Ar}*4NknfAB!z z+b^^AN37f@xgL3bLgU?3Csi=SQm#$mr}7_i zNx@QaFUd-vYGd-ut9f1a89?7yaXO2&JY&f!`5I7LHN-T9@3q!-WzE5Ei& zg+^2QCNC_(kdiBJtdQWUs;zzdwQ8e|id}n$kJ{w8_1E8jPrjR#Z8MnHMC2i&o0n^e4{J|*pYis!qD|MpEj zIz5QE0E33*@z@d@p44wYenhMdyX(`oYu~=Qnwp-{)oX9cM+mk(Jm(Y|^RSZ*_Ty85}Sb4q9e0M^IAssI20 literal 0 HcmV?d00001 diff --git a/test/reference/caps-2.traps.ref.png b/test/reference/caps-2.traps.ref.png new file mode 100644 index 0000000000000000000000000000000000000000..1c5d88574c2d6a3fce79ef0785779a15cf3e4b09 GIT binary patch literal 1231 zcmeAS@N?(olHy`uVBq!ia0vp^Q9%5Rg9%99I>Z_cq}Y|gW!U_%O^81u(Wu( zIEGZrd3)Ek@0Ev0TVl0|lETZ5P>W3*ii!!^6|ED54v5`g>6;^xPBJH>%Y?s~n%9o6{om?U?4@X~|E- z%>4MOOOx!MN$hX!opyNMynEkeCU4nbSbXEXy5y4?t6F>K9ImsxYG3SgCv5 ze{X8}WAU=gci*d5i_M?hv(_!>`qvz@-#>n2*zS9-+&ORYX@y(QB{+(gHpxJsQm6m4 zk`HeLo)CndPa@V|fBm%z9GS&S*Bnyqf|*g&_xWc`=v9mIwpFWM)!4b)<=xpE8XB7V zwmf&M?8)ojHmq88tN-Imk4JLv_U{Yr>z!gX>4m$=wwraw)!qn1e{qgEAo%FhJOT0g z)*U7WM_Lyv>S^;8Uaahh7HZj%=-P36W{c1sPKT%zLMFr z|NqtQrRw**WaYQ?txxRJf7v&`pills-%I)9PZlJth*jsC+d{<^-^es88Yu!LgpboFyt=akR{0AJ8b*Z=?k literal 0 HcmV?d00001