From 5da41842177d7e4871beecf8672c3143e6cf1483 Mon Sep 17 00:00:00 2001 From: James Jackson-South Date: Thu, 21 Jun 2018 17:16:42 +1000 Subject: [PATCH] Better tRNS coverage --- .../Formats/Png/PngDecoderTests.cs | 3 +++ tests/ImageSharp.Tests/TestImages.cs | 4 +++- tests/Images/Input/Png/gray-16-tRNS.png | Bin 684 -> 1448 bytes tests/Images/Input/Png/rgb-16-tRNS.png | Bin 0 -> 2624 bytes tests/Images/Input/Png/rgb-8-tRNS.png | Bin 0 -> 1624 bytes 5 files changed, 6 insertions(+), 1 deletion(-) create mode 100644 tests/Images/Input/Png/rgb-16-tRNS.png create mode 100644 tests/Images/Input/Png/rgb-8-tRNS.png diff --git a/tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs b/tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs index c3c2cf23e2..8162d61bd2 100644 --- a/tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs +++ b/tests/ImageSharp.Tests/Formats/Png/PngDecoderTests.cs @@ -77,6 +77,8 @@ namespace SixLabors.ImageSharp.Tests TestImages.Png.Bad.ChunkLength2, TestImages.Png.VimImage2, + + TestImages.Png.Rgb24BppTrans, }; public static readonly string[] TestImages48Bpp = @@ -88,6 +90,7 @@ namespace SixLabors.ImageSharp.Tests public static readonly string[] TestImages64Bpp = { TestImages.Png.Rgba64Bpp, + TestImages.Png.Rgb48BppTrans }; public static readonly string[] TestImagesGray16Bit = diff --git a/tests/ImageSharp.Tests/TestImages.cs b/tests/ImageSharp.Tests/TestImages.cs index d965b01d74..8722c8b48a 100644 --- a/tests/ImageSharp.Tests/TestImages.cs +++ b/tests/ImageSharp.Tests/TestImages.cs @@ -30,13 +30,15 @@ namespace SixLabors.ImageSharp.Tests public const string Gray16Bit = "Png/gray-16.png"; public const string GrayAlpha16Bit = "Png/gray-alpha-16.png"; public const string GrayTrns16Bit = "Png/gray-16-tRNS.png"; + public const string Rgb24BppTrans = "Png/rgb-8-tRNS.png"; public const string Rgb48Bpp = "Png/rgb-48bpp.png"; + public const string Rgb48BppInterlaced = "Png/rgb-48bpp-interlaced.png"; + public const string Rgb48BppTrans = "Png/rgb-16-tRNS.png"; public const string Rgba64Bpp = "Png/rgb-16-alpha.png"; public const string CalliphoraPartial = "Png/CalliphoraPartial.png"; public const string CalliphoraPartialGrayscale = "Png/CalliphoraPartialGrayscale.png"; public const string Bike = "Png/Bike.png"; public const string BikeGrayscale = "Png/BikeGrayscale.png"; - public const string Rgb48BppInterlaced = "Png/rgb-48bpp-interlaced.png"; public const string SnakeGame = "Png/SnakeGame.png"; public const string Icon = "Png/icon.png"; public const string Kaboom = "Png/kaboom.png"; diff --git a/tests/Images/Input/Png/gray-16-tRNS.png b/tests/Images/Input/Png/gray-16-tRNS.png index 4826d61eb7fab6977de0135762596f6220847a51..4b7537e30508560b833f3d2da7dc8c620a34c301 100644 GIT binary patch literal 1448 zcmV;Z1y}lsP)Ea|c38asIKZwJ|` ztSq3EQc4L~ytwn!<>xsV0D#@Qlf&bW>#hL+Nc8%XC(SDd?R|P&Ri-?glOv&YUqPVR z<#ISKd}0PyJOgn1XsS--P z-c=u}_#yK-&g1E{qLkA5dY%snId_f)kjrU1K7cMta-MBZiI7UKUpEy$&S#JM)RsN| z)O`n@{OE`>1@ZSq5g~hPZKCXL2dA9Rvi>wgad{hilnSj&rWScT2QTs(woLI$V<3Q^ z&+8bF;w^AHQ>FR~obzjK-e#m-^8gOwVg&8g!sxDpPlByO-E-SQR5*y)Z^z9t8Rc(up&&mo5V*qa4P%81lL4(qBQ{z&-M)gY#wBA}T5PkuaLaLKv)5Zx1i%8Q-U!)9V`Oo|h5?w(lzP2& zpO&8D|B4OrXVJeu{|}@SqKncUiHSkTV5s<3$dgEw20tM-mW{Ugo=ug1!^|MWdy}ED#z`3J;_CgQWW^`(B0&WBb|h9 z&04cPB&%Oxd3kelX{k)sN3-^Bn)XZ-0q)#+@!dlK06-8Fik{7U?L52=Y~Rl?3gStB3Xp76L2r&ntk zLKr42Oc3mL&(R8-J>TVwTa~t9z{C-c=dMgh=p}$Nf^^283~suns#-`SX{1JCCIn+b zoK7;z2NXyiD^LmZqh!J?LI5RZUmTme|eavtQD^Zi|G{%Hr>~tD_ z@V2@hj9709b$=m-O82J@oHVJIfK)oV1RYVCz0K|v#=&%8CCSAagb?C+gj!~KF+~IU z$X&AavPY8HU$1^q+OB0-v*y>v2k=2ss>-(mTEuGPI)N>6Zhn zH*s52O3EvC0pq;9n|olDC4FSUV2)udmWBqawchNBo-CZ^!fIbJ%H6?n`T0hpRLU?7 z4OT0qnVAa~Fic;}S8iiNLqUN~r_m%P{x|1;uk*j3h8*&ox4E1E0000Q)?6_t8Wt(r^S91+lJYzG)57?=|n qcp4Z7m@_CG0SSfy4hgU$t}`7;V&*H`p}d0u2s~Z=T-G@yGywqIAfV*{ diff --git a/tests/Images/Input/Png/rgb-16-tRNS.png b/tests/Images/Input/Png/rgb-16-tRNS.png new file mode 100644 index 0000000000000000000000000000000000000000..64a9cdf2f7fb4015cfededee285d015f96330cc7 GIT binary patch literal 2624 zcmW;Odpy&79{}+0hMu{k(M};WMJ>4<_rok=GIGCPva%4Wg9urf`~5cIkucp{H?yeuYu9?5XL7|Vg@G%1#crW%*_;D~afi81aAE1Og)sZ&`U zR~u4OQc?!zPC~{MKR>^j_;9AM3s04ue732g5?6`X_RhVxP#k+2WGT1H8r0PTj4MzK71Itd_F#GHc|+i?J1#yxK760*KMJinq;%&VV??h8kfey_bGIGH4M!LDJd%} zYiaNyBSGiKBn3yuXrvX6@dODL@t47pHV*Xmip5Z(GN0r@QCyebCC#>Ch<6d`~M3*HcmEe;0i^88tDjWX#_3JNklEU#}h2=gvl7ztT zA2LHnU{7KAm`hrEilPBJ1r`swV6wWp8XFrma?hesyr2FJ(kbYlf^|Jp1dmK%e)ei` z&e`7D+ESOu@fZ7s(?nJ^@8YSfGxlQd`&ld&?T@Vrp=*sUH4bM< zfF88{Vu-qZ8_VcBfQ*h#Qq|Vh%&|yM6;D;apu_QTw|lar><9S4GoHlYHEs#hK7W37Mh;db4^_$^#fws z(WGiyhIR!ed2&yZ8Bq1*=g*(i@MhRT!MA{E7ZWFIhh*&6exw|k{psNth5$>+;!;@XPzJB3~u}Qyeyo`!HUu>1Y z32U+PZyuemduvfn?>KouAK~QO8X#Fz#8eS-Z~#2GBiy;={|E49n8k_k#vwj%5a8b4 zUGKiR`APp~kw|8`c{ww^;$FQ=MR|F-Kh<}-zs6>&U-5a;EA5Z`Hn(5{RrFp9rcfyC z)hWfBeu4&MSKBJP$3^!ZS65f(=fT{DZPGoRG;9ok!cr8=#3K(e?rnnSuih9H|87nJY8I@HRm6*4*~=^qg4fMgUcD_=B@G z-`om?zJ{R>+^q0<@ZxJegh-Rpz5V269(VqJ5JAB$j2sHX$LK`>-e>@Na5NnK5zfLg z>-%aDoY7b$P2prLPi0?HiNgXB%q_qfDx#hs*(8=5AU3|m!7S8hV-grs(l zrMeaunB`*<(_C|-)#9_H%cprh&^wyW(>-aN?%pX*_t|2{-4m>Oh0gkvLTlIip3Vmr zw|91JE39Vuqp%}4YaFWEpXNcf6|lFSl<|Sfx3WB)f8>&1H8(d)rSYKkMTa}|t9XHa zFTngFWP{Pi3%?6EBFMaPBiq!~6-+D(2T3|&Be=%-&prdxga7PsX(7REaapP}B> zC%v!FW{HU3N5I~*OQ>uL!^0hNzq{H_-d;V4t=-bd2N*p7tgfxCudi!qstUEKd_tfY z^VVdty*>F5mINwAh2pOMby-EC?MkW08|(Y$4G>mng!67`Xoh`ZIb1uj9_h5*ANlTe z14jikAi7bnE@h-63jjeuLntD6YG}pOr%6kFaLzaQS>-7}ai&qF+m^#}&x!@TyghtY zq9r4Sd*n$3Cfq266DEC->RxAB_TJMOPNk__6gHu_ShA?|pfD2r;ejFgh$bFBZShb{ zEYuR2t4wa8ZZ5CQXlM-79hY*tq<80e#f6;kJHx{#GGA!YQ;bYR8MX6@2qJ>vLoA*$ zMP?tgqsyMjLI6}eEFFvGrCL*4TPv*_r#d<~IJmL19)Th%oh} z(<@3#?Ub^Y!#ZV>CzjY3(xvqtJj92?-JgCg?(Seqiz!2JtkG|v_EIxk9oIEoL)NPu zM@My8<6in>p4p<@aSPv-WcuSJ>@gGO?YzhWse*!H)+(emz6y)BFuFFL1yt3)xxKl= z-L@1;TN{ObkVQ5l|5gJ$R9GRx@f8yFba+n@voYaBy8B;4J4ZlR^7rnWNI zqzI*^ZZo52-xb+grR#*ukG#CadDumc2-Z1$YGgixBmTH3f9AByue^ti+)LZ}&)tId WtY3e({0;sk1SFz`QSJH5QU3=T4Dpo! literal 0 HcmV?d00001 diff --git a/tests/Images/Input/Png/rgb-8-tRNS.png b/tests/Images/Input/Png/rgb-8-tRNS.png new file mode 100644 index 0000000000000000000000000000000000000000..08ebbae2c8cc7ba70c0104a0abefd746475fe44b GIT binary patch literal 1624 zcmV-e2B-OnP)K~zY`wU*CM8)q8Fzcb^pJwL!dFa}aXFkpy@smTvEg-cUu)kIxI zi<0J;s?v%@sezdbXa z@yxt?m?R{-rjSbgYAz$q`~5u6^FHr84@C&UZz=jWb$>I!=H}+Y!a}7|c_V;r-!C$m zOgtXHd-v}4_BNN#yOYTy?d`#H=LXK5^Y!)ZyPVo<4~oTNB9T~FSXf_Qx5=_AnRKtN zGKE4Nr~oa1pQ4!ihQncp!_fp#uh*BBmhRubpG+nV!{D-6 zA(0SQR|QoS00+n)aL8HNdkLg8?DczD?3 z@$3TP@%YV~Hx)&(UW2oOm+khP-*1kNIz`d)QC0QXvuCm__xJa|R-#-kH#0M17>3PZ$bE(-07X~9Z!zi?RKBfXBbAc zT9qWJNefbxBuSY}ad9z}OopA#tw3O-r>7DQhnpNUr_(9ag_=?WjXOhk-dTIc3Xo-4 zpU>y@dMlMmtyX&(wWevgT&`R;fBf;ILZKD-XRTI#^vFfi#_;g)OWWP6f~IL+=Ai%u zY;0mY)4e|B4X8FpSsh)pfm8DiJ~+KR&awa~xP< zn16J1%nQOJQLOd!XrWN33Bc?1@(PbSumvdissAU1QPhTt7N7*K!I2lzG>s6VD6J14 zeh8Eq=9{sxTr@hs^8<$uAP;5U_-O6#!su z?fpiB2maRAmk|VRaq)NA?4MUw#)pTauQtMK0AAq%paA>~n7CKEXSrJsA;dIILWruW zriu0S_kgm^7He&#=I7tbW_y7rqWG_)M+ch&yk0M-aL@rB+y;jnGJ(vFz5@dwpb2fc zzv!PqMezW4{r*ZiT~yT^5C@7bmpU>svNxd4K?mFzNDW{M=)rnp9VVbbB%!fOvbm%rM(Dy#qLb(PPIB34+iZz%WdwqZ19l1y8}_+w{Q&QYSD0^Lc$t)3nZN zvFHJIfd9DNb+5O<^E_}GxIaGrzrUc@ewhPZ1FXhEgiOhijR<5w1Ps6gF`oleRV9Q- z5)G^|jOldhHrsfuHU?xlF8}VkCw>WV`SRs2ykDGLJ~?8J^l$asx9sSEwFf-mEr8Xd zjYb*RwAqY&zI}Q56yQ2^=&#>>_os=8iC+S+Ec@vnKmGC#Uy7VaH|U{_A=sX0K%2A$ zu*;iwVHldGQ>j!on