From 48cb4ed8190a6f9852f1b7cf481f3a6ebe20cd65 Mon Sep 17 00:00:00 2001 From: Suraj Kumar Date: Wed, 22 May 2024 15:20:51 +0100 Subject: [PATCH] Added unit tests for DiscordImageUtil.java --- .../jdi/core/api/utils/DiscordImageUtil.java | 2 +- api/src/test/resources/file.txt | 1 + api/src/test/resources/image.jpg | Bin 0 -> 1523 bytes api/src/test/resources/image.png | Bin 0 -> 1915 bytes .../api/utils/DiscordImageUtilTest.java | 52 ++++++++++++++++++ 5 files changed, 54 insertions(+), 1 deletion(-) create mode 100644 api/src/test/resources/file.txt create mode 100644 api/src/test/resources/image.jpg create mode 100644 api/src/test/resources/image.png create mode 100644 api/src/test/unit/com/javadiscord/jdi/internal/api/utils/DiscordImageUtilTest.java diff --git a/api/src/main/java/com/javadiscord/jdi/core/api/utils/DiscordImageUtil.java b/api/src/main/java/com/javadiscord/jdi/core/api/utils/DiscordImageUtil.java index 8ef8a3f4..de1a9cd8 100644 --- a/api/src/main/java/com/javadiscord/jdi/core/api/utils/DiscordImageUtil.java +++ b/api/src/main/java/com/javadiscord/jdi/core/api/utils/DiscordImageUtil.java @@ -23,7 +23,7 @@ public static String toDiscordString(Path path) throws IOException { } public static boolean isNotImage(Path path) { - return IMAGE_EXTENSIONS.contains(getExtension(path)); + return !IMAGE_EXTENSIONS.contains(getExtension(path)); } private static String getExtension(Path path) { diff --git a/api/src/test/resources/file.txt b/api/src/test/resources/file.txt new file mode 100644 index 00000000..71c5533f --- /dev/null +++ b/api/src/test/resources/file.txt @@ -0,0 +1 @@ +This is just an ordinary file. \ No newline at end of file diff --git a/api/src/test/resources/image.jpg b/api/src/test/resources/image.jpg new file mode 100644 index 0000000000000000000000000000000000000000..0655464557e475570059e126c5d01ad5cfe6897e GIT binary patch literal 1523 zcmbu7ZB&wH7{~ADfyYp^feD=0nKRU6l*9M3OdnJ{nmRFGdNI>{qiNYJwqB08M{;J6 ztrxXSUC1#))K*!@OhwIF+L%VfM92qk80Gee~2>iPs z7-xQPAzAt`gvb3OfXFL6Ik0_f-p<0)*J`_F%__=&%>Y=aRPz7&=CsGa7H3A1abyq# z`X<;;BB5Ps2#_=v#(6x?y=h42)CbbM?GxpmnY!eFIYL`OV!vmNm8!m2_Y^wlm*s^G zUJ%)FD)XAgB(%CYXz%Q?mi)`;plq>OwTpdOocQ!(YNwkbS=SP`9?BXkYsQ@lp)KxE zr+KOCz#SB^!^tk~l-rzbm;D*^p`NbH_t2(FHQRrQl;j2Z2A)oJ|MjEltz)j`-cyBX zZ0+!Q2HZR3<`^=P)PF%SHTr7o65it;XmhR7GW{ne6LY+tQ4&+i`bRgY|KM#??&eqC z3HW4*v0`6q%c<}kQS);G!jjogBo+a_wn%wwquiA%Us~n)#lsh0=@TZO<$X4aDNW$S z#N9gV8~2vt_G<@4CwdFigRLk9kZ2In1Ax7Tw_Gq&;U{`h^;|~X@m(IiG;75kHQIjr ziCfV*<9WMWBj1_^d%;o@FtEF!(jzX}0+A+XZ&_v$my~)B8Bq4i7>B(!(P` z>46RW$c95pHmFw}Ng>@C2DBSsJ4*C{s;{1z&vk8+%G@3|*BsryI=#Hw5zKgAVUO>B zv3zZC$*p>A@Ap3>R9B=ByN}lBlQg^#pFZ-F2Vo{Xk9vjN@2GtCb4m$Y2EV$$<(#oeW2nID7I&= zWJ-k1FO60wo!>@N_9g9t>1=|k<&iPwfPM(tQ{ShHRrHTU>1?ePl4xouHO4oALNfnT z9y}L0aV%B4YFUj{!+L&%04rU|1S)vEXQqmC#X0b&lV%kFB;@*UCCY(t;!5e6#hVN2 z?!yH+TcLZ1m8ubYQ2*W`xv%0|mc%TKTG~~|&rWU^j!b;I3Al5?rr=>{YsZ&G$^i=p zjWu6T*px9VTCj))87>X4o&8!p%dpBXY3MquKQ3{d5D(GoFB%j~6hIU}uEQsIAiqbS zt{F%wu*~a#2k{mVIWZz%*l&E=>wBWZ|NWmkn+zGon9Wgp<|VC-=Y_J>kQXNRxz9sT z3auLe7z-XNYT*HZM^KBK;JL?O5M*Dl8F|r4Zz|@EALbj&(48WZB%B&)`zlMaQbn&4xFh zJhd}ze1CUs@hU&Yg;p^{XNTL|k9ve!vMF|yJP$OPBVp9aS@xL5A)bSJ+%0NYPR~H! zGKj=W*^jMd56RrbZ4VMy8=Y#GNwU4bRk@->3J9=N$b#ikf=?Ma*GX=kzcg&~YhlB? z$}acJYye9DL18NgjvGbwW5dKD8}Yi>fJT&y;v$q*OM!`r}2 Oc!rUWu>c4%4gUpAHKZ#5 literal 0 HcmV?d00001 diff --git a/api/src/test/resources/image.png b/api/src/test/resources/image.png new file mode 100644 index 0000000000000000000000000000000000000000..854b2cbe066e405c99f95e54abcb040f7ddab534 GIT binary patch literal 1915 zcmZ8i3sh2f9KNFHQbF=jAqq+=E^W^6F{M-#P0I(QWmYOVBr$xYCZy#xj*sCYwQVKa z%&eBn(z2R~q_joKvX@$>=3|O>MphGM>87#^ZFbl>|9kKG-|zf?-}n1|-?{e-YUE~P zYhwTa5MiN|Z2+KGp}9WNhu*a8y}JZ$5~<-a!O#{205x<60k!7w{|yL$YCugS5}8b9 zb#--jceh%trnumK$%}Y(t+=l!G&(#y90WnUmDygB)4{mF)Bq1o{Eqyz z)RvakiSAqDS4FaZ#njZ)#IrNIckjt!CS>i5XY9|-&d$zaQ=^fn3pVzjBhByHIvhlp zzrr|hKl@mfxef5a00+E)XlLLDYH({o(XZcaMcZU-au6mtKB&Oq_xJ@QM>?7!y|LyI z?&kYK&A@a(Jq&<{oYj9)!Tdn=+hXwWUiDu;Z!+-AU$LLIa&z5Ufp|x4Z{_WQkhm9x z;O})cfA`7~T&S#2I(w~awtqklE$T3fp@$2C`IQ3eV}M;hVm2mtbHv057E{>E{cNQw z6Q55udwUc&|AV!TlVnq-C?%+WqFRlOF`UZmS63o+x(^d)A+C|2WTz6$q`xEIv-l( zV=Z}mr2zl&%_IXUW0!kTl2_BInYNs^fDSX$QVGX2{DPzaDNWLIJt;|rU+R}IRjWG= zw!sgQ=p9B#qcM&_B;m;8NlafFPYm$=QfC<4X3O*CORQBr89ebv&J=;@Y@-BGS!_CF z=LR#bJo~!dB{PU&KjGC?4hG8WNebiVsJO1{2qnH2<)aXY6OA5-W zx@*Bwv}Jj+6vkI=m-<-V%axk*%Oj-4n7Yy1CvK!@iPFn3bs8d9U7`kEBGEDt%$u^R znZ*;QSm8Gh(@tt!`FC{;P5v})&Toj9T3Po0&EM~wjr*)N; z>MFastPHXsCso^%#)67~cWD)?I~q{36SEDFoLJ`(?7ER!PT?g^>G;Htz16>cxN*_D+19j@juy7EV`nG(>FUiK7wtv*~?~AB^jf zU^l(yP*ieOr-g9eLsHFS@frn(Ox)Px9!~Uq>i%m0*59zk4_@PMR8j&~uB5X~*Wiqt zoIqI^J=OSBjUkh{a8GJb3wD^T+6Kk6&F0aNP4`kdQ2|di-J^&4Y`D5 z6gu~8(| zLPHkYPfpmnu@WM3#C6Vz)sN z62Ba)DhI^$BD*tR*g7xp5f)1YaN+q$fur#2Cju+sjah-G;RcdP_e1^ia*1-o6_N3! zCVdP>GUasT2ArLtPa;WPHx{~VxuvyAM%bz}S#g~P&C?7&&&V1rJti>ozhaS%N5E0W0#MZzSu1o9_d3*9bN<6R@$> zBM>A5=*%p=JqfVbSjntsX14zG5m;W{(&V`QD`+ARt!5(drL-m+dF_8uXp}%X5$NPZ zzMK;+_+S~VN(`+n*V^Q8+EwP}@F*FfM9$h(MLj({>PBksUAU>3Bdb)R3BvuRZv}}S z9T}t}y$h``=RObe016k5Z0Ctjc$Trt5VS2&4ElAFdmvgTBQ3gMEKjT|eD93eanbva b(GqM+C)@vGpCbwSjRIl8k(9 DiscordImageUtil.base64Encode(null)); + } + + @Test + void testToDiscordString() throws Exception { + String expected = String.format("data:image/jpg;base64,%s", IMAGE_JPG_BASE64); + assertEquals(expected, DiscordImageUtil.toDiscordString(getPathFromString("/image.jpg"))); + } + + @Test + void testIsNotImage() throws Exception { + Path txt = getPathFromString("/file.txt"); + Path jpg = getPathFromString("/image.jpg"); + Path png = getPathFromString("/image.png"); + + assertTrue(DiscordImageUtil.isNotImage(txt)); + assertFalse(DiscordImageUtil.isNotImage(jpg)); + assertFalse(DiscordImageUtil.isNotImage(png)); + } +}