From 1f8a651ac84892a11b884bb48e3a9602355552ad Mon Sep 17 00:00:00 2001 From: Karishma Chadha Date: Fri, 15 Jun 2018 10:53:14 -0400 Subject: [PATCH 1/3] feat(sb3_schema): add comment validation for sb3 --- lib/sb3_definitions.json | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/lib/sb3_definitions.json b/lib/sb3_definitions.json index 008e9c5a..fcd26472 100644 --- a/lib/sb3_definitions.json +++ b/lib/sb3_definitions.json @@ -220,6 +220,9 @@ "opcode": { "type": "string" }, + "comment": { + "type": "string" + }, "inputs": { "type": "object", "additionalProperties": { @@ -281,6 +284,21 @@ "opcode" ] }, + "comment": { + "type": "object", + "properties": { + "blockId": {"$ref": "#/definitions/optionalString"}, + "text": {"type": "string"}, + "minimized": {"type": "boolean"}, + "x": {"type": "number"}, + "y": {"type": "number"}, + "width": {"type": "number"}, + "height": {"type": "number"} + }, + "required": [ + "text" + ] + }, "stage": { "type": "object", "description": "Description of property (and/or property/value pairs) that are unique to the stage.", @@ -378,6 +396,10 @@ "type": "object", "additionalProperties": {"$ref":"#/definitions/broadcast_message"} }, + "comments": { + "type": "object", + "additionalProperties": {"$ref": "#/definitions/comment"} + }, "costumes": { "type": "array", "items": {"$ref":"#/definitions/costume"}, From 97f6ef5bedb14c92664c0f84a07a0288e05c1cec Mon Sep 17 00:00:00 2001 From: Karishma Chadha Date: Fri, 15 Jun 2018 10:55:28 -0400 Subject: [PATCH 2/3] test(tests): add tests for sb3 projects with comments --- test/fixtures/data.js | 13 +++++-- test/fixtures/data/_comments.sb3 | Bin 0 -> 43749 bytes test/fixtures/data/_invalid_comments.sb3 | Bin 0 -> 45622 bytes test/integration/comments_sb3.js | 44 +++++++++++++++++++++++ 4 files changed, 54 insertions(+), 3 deletions(-) create mode 100644 test/fixtures/data/_comments.sb3 create mode 100644 test/fixtures/data/_invalid_comments.sb3 create mode 100644 test/integration/comments_sb3.js diff --git a/test/fixtures/data.js b/test/fixtures/data.js index 05095483..81b2f08d 100644 --- a/test/fixtures/data.js +++ b/test/fixtures/data.js @@ -5,6 +5,7 @@ var path = require('path'); // Build file listings var sb = glob.sync(path.resolve(__dirname, './data/*.sb')); var sb2 = glob.sync(path.resolve(__dirname, './data/*.sb2')); +var sb3 = glob.sync(path.resolve(__dirname, './data/*.sb3')); var sprite2 = glob.sync(path.resolve(__dirname, './data/*.sprite2')); // Sprite2 and Sprite3 jsons have modified file extensions // so that they don't get caught here but can still be used by the @@ -15,9 +16,10 @@ var gzipJson = glob.sync(path.resolve(__dirname, './data/*.json.gz')); // Read files and convert to buffers for (var a in sb) sb[a] = fs.readFileSync(sb[a]); for (var b in sb2) sb2[b] = fs.readFileSync(sb2[b]); -for (var c in json) json[c] = fs.readFileSync(json[c]); -for (var d in gzipJson) gzipJson[d] = fs.readFileSync(gzipJson[d]); -for (var e in sprite2) sprite2[e] = fs.readFileSync(sprite2[e]); +for (var c in sb3) sb3[c] = fs.readFileSync(sb3[c]); +for (var d in json) json[d] = fs.readFileSync(json[d]); +for (var e in gzipJson) gzipJson[e] = fs.readFileSync(gzipJson[e]); +for (var f in sprite2) sprite2[f] = fs.readFileSync(sprite2[f]); // Return listings module.exports = { @@ -40,8 +42,13 @@ module.exports = { example_sprite2_json: fs.readFileSync(path.resolve(__dirname, './data/_example_sprite.sprite2json')), bananas_sprite2: fs.readFileSync(path.resolve(__dirname, './data/_bananas.sprite2')) }, + sb3_comments: { + comments: fs.readFileSync(path.resolve(__dirname, './data/_comments.sb3')), + invalid_comments: fs.readFileSync(path.resolve(__dirname, './data/_invalid_comments.sb3')) + }, sb: sb, sb2: sb2, + sb3: sb3, json: json, gzipJson: gzipJson, sprite2: sprite2 diff --git a/test/fixtures/data/_comments.sb3 b/test/fixtures/data/_comments.sb3 new file mode 100644 index 0000000000000000000000000000000000000000..ce937c45474cef94891edced09c38bf88852493f GIT binary patch literal 43749 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 @zVtf}~2QQ8}k)EmZ(V2m-t}M$m{V8oN zy~1+OLqzLfYZsEzEVDe( z$QbM}6Oa`sr>S-*FUi|WGL?bzK>f|CRJ*gHS`wAX4~jyoaFPol-J^m$XM|EpOPWJFD+x$?;r^oJKd$ zgJkEGUDZ2P-xR~84_F7xqB;^4h^_cpY!lj6R1iBK+~hfCEinAiLBn)QZO`t=UeriG zl66&WR_CZ02JV8D#>0%eS8Z#PBcFLC3J_+bd)vkHrzFAF^_ju3yly}g~OyT zm85!^>V_gEwQyY+IZUS#L?6PAy+QYhl!-0jNj|-!iMg`jxqgqy=GYaGrF7J039Wpi z+Nm0)EGDlcna(owK`MhBNAwZ2Z6(qwxh*<8@Yhw%I?8y$aLqK)@y!1qagnSiKA_mF z%22mdWh=6!0oDtLQ@O-xybbO{%b{fIY3y|HglCSeyJ>?#XFO_a&XyJC1FGM#=Sou@LY z1L}GzC|@P6$;iQHB8?bf8s7yO%Y0j0E&>a)6; z=BX+!pCbt{3aBDOcwIq-@1X;bsmUSHPyY6{$jZ2#pOpLj~%6i-m<)!j51 z>S+qGbTZokP8Uv1!7pRQu&(Il)QQ;e;2rl%%VGni%hSg!<-Drc1pEh!C<;|j(@b4m z>6K3843MRg_##1d#$s#GGNM>a6>8zBYwc*bpq-?1m>#-Hgd@m0x{XY#daiD%zN4HX zd&_m8t5DsDF?a%di_w@()G<*!?DVd*H8%Fv4basxO?A!+))dKLN$E#rhNgw4i@L93 zn&cTX8I&Y15?prJn-FjSWU(Ct#xM&b{q6b6JFvO*IzMP-A=Piov9ov zy~#F!P01a2A+{Dfgx*7LCC5iU_?4~`=Fa+-T0-B#VsMX(Tt#`ho2-m#o_d^mh0-S- z#qEY#@(3QrE@Dpvhjcx4EOs);yE|F43=_2mt<+S?IaKgDxxglwrW~mLrk=0*SH3~a zG9Rer#Ckk{^}#-%8$~4&w$KUh7MsuTR9jzr$FR-5$v-f8h3X~wr0lPGtEsA?m6_69 zwlDlijwF8JtMKbs4>X!=9c}H`I_{a~>dI*w>2s}G@BNqw_pqPkc9m3fO+8q7UEtX^ zm@m8$#WxEsGY#FCY8aalXyrO(cIm8zJ#?HU;C>wGfK6bsDZ9fbnw0*RPgw%4u-znLesw!C}RK}!9HAR(K(y?qd{6=OI zBM28h4?m6~sppY8zOVMK#-7?Xh0ApXmh0YTu{d6ytE)JnzODJFUakBs{lUuUMbr*r z4UtJ4#TA%FWQmpy+;o~u9dz>wo!WzDpW72TffZw|@;Pd=W~gSQ3X!)H&>snEk`oD~ zpgYH~s3;m>~d2SVrmd3&q;Q#(bwZR1WzLBhm}1^_riW;p*3lLdiCEH7rV95ZpjD zVitZIeV)vV{NPL4?->SaPZwqxFngNck~mAQ7vEN#RIkzeQ14K7lFj4h&?br|F9^!> z0{;gSiLOR-{qGzp<6do_!r8i87LVs{6vGv4OSw%oR8v;dMU|5E6f+C~Dw3;-62e^& z>o1xTTN7B|Ds4Wf>rgmIyTVkP;gp0}2#6-LSUKeYH zj88NSFY`LBKlF79cl@2LJ7aiD%)5Fg2P= z9*rFJne6S2CAIhdvbwJ3n0rQ~5q5+rChw#!o>nwXrT#1riF+{^C__#Yc8rKvij_f( zF+AACRn1&RSEZ2CRx?GMsn8?jARUtRQ4dJ#m$pN_T(MS?5d2t2axuXYZu~WN8~Hc! zG_=+Ot-JKk3e&Y;40Rnp0=rXguv&UWRXy!lT769ep(JGy_5<8YhVc=21iK(8aj#VU zXwuhH@H)e^g9^LodRy9h)v*uwFz$!qz9yP>EUk|Eki3KVHr<-)By5WAcyoLN_F1$n zJ}21M{m}ebH@Wbsww)>0)h3*dwrA$Z^=cx$e0o*QLB&c*E>j;IA$H;?@qh6Ocs&$P z77ds6=2>6rzZXii6O2|z%V2*|J{&L0Rewo4BqYbJ%Kg$gY?@G6XJK2E5)`sF)+6PN zwDN7Uk2apweks%#j@w*P%r*>}Q&QNyK8TJ=RH3{Y{87(JZo>Z*0G4 zcv_hESEQ?HY3Idb0lYcaMe$x8)TGo$1nh^f$H8%83l>33Vkgk=NSoBQ=p=t<=YEq| z*Qn5~?O^`xJ|Ag|$=E~k#p=pwb2Pt|(`Cg39X?5R!8c+ju%cKDxtw|v#R6WZ+&o5@ zj}F=_lg4!`bPKsp-w~P1DyQnsVSeT6{Cc%6nd%RYtmq#pc+E&tqXV^alP`@*~0 z(&lb%S!5@=nu*C|YOSWbX0xiY92fGOoVqRW@*-9OYl=ovd~8KM z`GE&1KWHlbr7G0yOiS0aQMx4|CKKSqDXg*3>2x9WFHI8BIle=Vy5_4tPd`=w4c%jopFe|b-6^p6@C0!c9dz%Clt=4*c{rClf z5I0p$(R@vto0g%zC7&&xM}Hyn@TP*7s4mRa0@1$sw_v8{wDq@PhiRB)(eP0(XTN8(>h|c0noGDQhMEW| zP$t`|;?mlu_0o)2&XLwpPhWLjmQ8prA}o- zVH%&S>nOWRJxpUzp4fp^!Eyvlx*>FujI83f+iBBjT`^s{(PzKp@0QG@eu#mxqUNtg zp*f@cEIr4*1OE|UF*!C1%fx;o1sUMNF+wG?BW?KW_IIXH`o{X1Cej%Vj7>oh5_=W9)P+LM>Y&&r z8Nui&7al|9m`d<*+mO8EwCE833#ZQ<)z8*lH2ACy_!Y7FctbW#-cfZ{Jw`oWsgb>A z8^Qa;1p!4DYCu!S{?y}G<6w?EVCiF^bx9p%Ip(etS%BsUnJ%narMaw;s(HCh{Fk0g zRU%NlEUv)^V5bmI;#&BWH)yjNpXfg5x|_y2>jiJ5x`82*MapODJk3<~Lxn+dhhf1F zd>B?AyMnF2%A)_IT1BHi-qF_FPd`=X5xmt2-@O|ZMnPnlbFRC7#oOm$b@N&J+~qG}Sg z@Kd-Ew_qQU)q?wWdn(#G8u#lm^~=r2U1vjoL_J|G>1*Xjb!$x#VOKPh9A%0FhWv)t zCe9O(XomGkU5*s;db`}zSpQtt#1wNJ2oy!S>BQS>lbrGpWL;O4Dpok5-nJk=#dkmuyGez%z)V zL|eQXVv0wCz_Z`l*H}^C*^scj@qCYL7jn2%)>HLRjcfiYl2v@&=M&j7iuPRfIPl#0TSZ z(F&>N(Y?Nxj_Kx~`fU9@<1>4Gf1|{Eq9iv`K2(*fex=&0s4gwb=7U#6SDX`YT!`1e z%7~i9rUx3jc3FBEj_Vp4`dTfXw~@VQF?yaj^!pfnUL&;zjWx z2$h&0dg^IoyJ;Mv->m;*KI1AHGN!y#Z}A8D9pw#<)bCu#`OYAaPyoFy-=T&rxYm?B**Fs1=H6)%UM!OIaR@ad>6 z`7=`6x5iP-d_=!gH`v(AzRb5I{vOBJWzxQiFNzL|nzDbnOxjM~#rI%I>%4a}DUzlm)MeFUKnpl?g8fka6*6 z!By^K)*eQY{;iOX=elE|l;{<>E}kUUE6OQ{$xll@F>AmKau;5PxJm%BDe(fmn#_!J z=QrB(O_TL)^lnon=bk{RWDoK(+gnywQBfI_-;p-r!mtL_nYfKFAf#lRkmJKeYhz#h zA!iTEL_M`NWv1Y z$iB!_!;o({Y3bqa7V@Xcf!5*%a-X8L(k!1PeZ)?OI`SB?g2*O!k>$y=LPC2OZR)@7 z>}7EovJ4+hw;UV%bYd7$m;Ee_%RedJ%MVD0a6{(H|sF6}9E%Br&Ed%%=L0Q%N=T4>f`ugw0ItjQr#q zIr7X`3?+=OEnVD;LrYQ`aFM$#JEPDk3gt(ot+-`$W$>BIBkz*6sI_Dan=8tX{q|3H zy|ffJmNc|6eYNlOIb)~s(TqiMRz6yBLavqm=2p{ffk?=?R|td*6KPWZAlkze0SJI7~pUwq<8c$MG0ri(skh@SeNrv(~23u3} zVPjo$rbFzT7wd&>rpri5%m2!E$s5TG;$zH6xPqEW-XPCWDK57M{dAIxERoccwsBbQN4K}qT({y_908uHb4Ru z7YwD%4V=UL;rJUdt;zM3#& zThl$;7H=x@5Ge*T#T8@&_y>molaL!|WtL{@^4RA~W?58yf#Bp7r@ylilSJJUACRK=Jw zm2m9wt%!ZY8q%~RDK*RfljTcQ;sH!YIEnf}wxf*HK58`C1Y4gh9d7C!Y7d%<80Q=P z)>EG2VV&p|wVi7wy(Y_-J(QjlcVth)rr;;}FO>#Xf=v`byb|TaTKO@T*)rdlFibKJ zbmD<(34!}`amib0zHFH6qht&Bg${!iR34QHj)Du|7FiR^Nj?u1@t(GCHor8+Ot0xEjB{mL?;4jF8k>6A_wmUn zhdu-k*#?p_Qbt-$a*#bw4+a&f+2kiOkLpidBG#h{;f-EThP{`$v@z4f+4P?L@NkiW zn#E>FSm_w)If+7ik=YGvfhN>xswFrAW>XjNJW*j3`j0qq>v!XR<0wmSS61+OB7?X` zw-$#bx25f+1>#&5&`&{KsyKCsDgara6*&@}nRpyr>bYvmGUpkOniktz@$txeL<&9& zw^f%8l5UacxHZB=)&<3cQ{%yMkV`eg#iCo0YQAjeb4xQ*)Y!pV%v~q=EYTaUM*qY0 zl{A%9mptWOGk0KdKvQv2N3{hPs7*u|86N*9*ulNRw$rrVm}#!(IK-cgzCmPQGJ9EU zlDw7J#GlyRbOzi(b)Ys=1Hd34ql}n6**LP0zw9_?xo3Q8x?w%+E)p7(JWdRu^SPpu z0!eF$RD6_q0egT9N=~h#?o&SUJbp%$jD-VB++%I`O(%>4%|jh-{#Ud-ng;r^NpT0M zPGS*%XV=n&U@diytW4daHc}qqKeT7^e0Ugt#WCN)nzouIT1&eZ2Sv%I_(8agZ6^LI zo*|yhZD-EFwxAs~ih4}Nr~}k+93qC;)4&V&V;gI}W87-~YhTSDhDyEQmzT*lHqH{$`vL$_w{liTY*A%~C zn=oym3Y4aXP`juK)Lh~_vMJF#tl%}y{?_{@zsYK?=>8hG6+elNqyjX;RS;XmZN-OK zIg<-3005HIYw9uS#Ttqx#Ks49yIkGU%MdpD^J&@5;9ow@58TZ7x^e01@{gE;5h)$dY1-1Q%<#M$9re z8Wd0-sxg&Ee#KA`A3G4N@2%$?V|ALn7RJ%os|t5a7GnEB6=pFvT5J_l;&-f*UJs9h zOrQV@sQE+=S|iyn;`PN{PiE)12k}AeI!3CsBF{`<6Q{)K-V9%ub~DLj`;Z z4ufvgY5c2bReVRVzqhC3y~SwyZkE}fd-S0}$+NfvtY9y3nUcPegW}fQ8RlPl2rMex z_=%#)Q|RgBkw`^39x(gpCvYNs z4gRIH_)pOQ!Rt2i{&YkvyUe+kOvf^Bukg#{AlweFGJdX^X0Bbu(L+_Q4ClSMrfB>TrH<2`zPLxyZC1}cL!i}^{Yzo!n z*E%0r6XwsB>5fa@+%S`Bfd2s`TT*;da#kvm4ix`oQN|6I!qxB`SW8wDw*9Y2J%2;D z%${%QWVvOV<_5u)@iAy^>L^{G`yw7IoVq8j!p&qx(hp%}IteF%1H>TYP<&x9f8%VKBKh42M*!1wSfRR^ypx)bg1&u|yDD=kTL z(pttnBk((R2RTH3fvZ_FS0FwjZoy4uypRVUfExCPNlHq*5cy&Sfli(g_7av4Ca1Z( zV*vjxJT&DI5IN6`<*teEh?jBi7z?}s-cX&uSin=Kh%EF#f(kd`8#*JF-=^W_TecRS zyTJho4K|zVNgrpcil2*7@iKM`-3e9$!@)}+g~h2PrV*Wup7mF7`~SzaZPqWY%l^r+ zOeCFL2wyORxz6H8+(7m!t$}B$_kw5Y1gcTJ@m!H1_AJocv(K)wTr#z>%yo3-Yea0x z@pulnL%(C?VnqB|;Mo%RUC?7K^@nOf$%#C~7w;a*^`3C#T1K1toAYh$J$$fa;sx4} zDn)N*W88jm6YdE!nLZAjg0rXqdI-t6GUiGih&=Q?b5*xhFeBzx)()3uPPS3j4%Sd+H`W9b_{Z+z_E>Ex0Yh zG%kmJ&=;;0c7U6Bg$_wx3CH>G&W5&$mXg+cj=6l(aH(WTY#>#co*`@vTe-Q z2S319uupj7ROE8JQs|rap5v1BoaLF#=UV5V6aALzfp-7}!md$@H*)>i_4FW^3kHDs zKq7eMvBU&oY?v?ia)|Ivu&ewdi@RG!CR8N{=Z~Xz+XNvM7e11$~%Rg0r~C4P`4bPN)Mm&;+VrF4dj@Law|N z*77x6BW#0RE@G5|tJo=Y?HAYqW>O`I(r8}dPPm@W;k<0S zY3*n)?{45f6KRorhE6Bv!R?Hg>m{7)!PsDT$iZU5-wtGvb+C4+KG7%s_wHl%1J>=f zbk}~qL3mxF4*H%*3BH09PEBUpGQ)*U@e^dgJy1|PY82i^^dojKIM$ovyl7it+vHf} zZ5n(OLqwT)2Py_zu_d^->^5c@odu78d7!GmoGw%*aTysaIIX6>UaofbZ`LdJ(e6xt zlSuhwHp-Cg;Q;128)OHvbs06?8pc3VI7;wa>10nVJ2fv_El|-j($TyaO6+j4Y42WjOdxc`&LZ{O1wP~CUyxu_N*wfTW zjG&gmHOxJBhj8u}eH_k$I|SXI2??-|n2gGjRRmX&=|&v~ZH%M9y~)2l(lEIfEg?xt{!wI({SLnO_H>Hv4eUFeZ@h1U&0~?23yYHv;YFqw z+kqX)%%Q!)`&hazy#S_x{lrAHcv2DB?W^FEVbPo7h6k2&gie)8Xg^gAex2GrcOf}Gl{Lt{>$v9 zy9+1k)7|JAa5ELcZz5TVabf5y?r!2J=1{nl{HkEtSWfB-nnR8N>*+Jh2u93wq;>F? zaN7=;4VMZ`n<-S*Bht@*&CNR+Ir5!$&#b_+NLn%t{fBT<@Ekk@ zd%y^lNnXI>DNWoJ)OlOG?%R7fYPj=!*Fv)R)6_Vu9r+FT=oL&^CXMa~uY$LNIvRji zIQ0W7jZ{lCj@0t^_Vjg*ca(Fj_ihT*iqc6N!Vo*Dax}+mWDe06VNlS5zd+cdpdJ;& zhoa+?C8LJ}NzZfVY)1vB%v0b~gcb37sdbo{cnuoUnM@;^peMshu#7OnqhJ{@nT%qk zMYZF7LN9owyP>m%vzfbu?|X1u%$}@=%_2qt7raJ~q$#>2`~@z8%U}a|NmU~w*iTW( z#L2MV=W_RUh8=TVM(>dT9sQIzjO@WXQF~w~`U>5Qo&<})zu*qAg7)AB`5do~-b@aQ zUJNYrX1RVkS~yF4F8khv3S-YwKJ)|uKuxHF?V$&(0WCovP!beU7P1TR2dyh=9e0KL z`Ubg=JIgs|x|j1g!8eiliN&JP*im9NwFjIBdN38p!CG(#JOVXAcPd6GFg~>~_8~Zt zU+Nz0%5pdLX8Pxajz)_mO``JnLUKDO3lGB4FjsJa^C1uC!E3-k9>jA62e~lZ#oynv z!rL(ihXwbyfbJqp)cTcKDoj;rS|YgPDNqWOWL0c?szPi_a5=xqUB(q~ z?eskGv7!9vuS7j0fvqQ-f+BD@YylezJEjM0082so&r>Jwhf2g1Dl^b+eS>75=~r|^rWwOA83I#Z3;XvSHIg`ic1xa!v<`IfdR={7OWhG~)ZaM#C)POC2le1} zsr%p@989mJPtwQfe0nJT9@Yn4$#K}*)b!Yy;2HkD`-y9}d%Jgx-xMNZy_3I?wfHu2 z71#kw(f4VD3DPAPJ3WbxgA_R(e;|4l{}VdxJK-_72D#gLOZj_*)=Kg_*>tnO!tZ*8pS58rYdsJ;5E^&T5`X+q` zjsa)La`=8xi}?Fcdw*Ro?b+mM&;RuQ3Q;jOIT>N_HDo1_4H3E@{gzH=PSe-unluV~ zQz!6w$g~6%G5dFVi+Swsr{3}YMxoqjr(_eP9Da~&16IQs^hMf1S7z!mY0MM)Eo=zx z5+BhU$xcx&IDzlxIqf!jbo}dpE6l~arplxDaXZ-y^n=%7Q+khpiIvWyV=x=EAiHBH zQ%z!xLv?-4JQ?oU?x8}jTZR@yHzW>=`eV67E2=Xn12+g6ts!lMP3SP(2TWuP+aVei zFB>lD-|H#i4!PcVXy5C=x=5S&oz!M@6~2nRNSy^q&=p>RXQ75Z3pW5M)gM2OtWLCy zR0y2)?sw01=X=cj?ZCzGuNa%!i!8y9lU^zfu7j_kn(iT}PeXdHkP5F8y-_5!HrgRL znOAsd_h3&wJ}=NYTqgc4IRssUza-~_F3=4rdbYr^vw~vf3R%81*$8`+ipFLLJ^SX_ z>-M{^2{_IPosU*eIz>*b8kwYu!lHDxz?Yr$KA{U**amDRrMOl^CtP8tf48^L{ns7z ze^G`6VXdKR`4&ZZ;r-|y3jsYeA(tTKX;~##6 zfPSm^r_@%IBuZ0L!5G+w-cD~3&g~Y|F&)mPHWIs0JoP2IHc0qpctY+To({aFzyltEabbSa3~5F6@gf z=vJa6)d4JpJD~wO1(npp)=*F73JzC}luv98Tm2)wHwE-Nc$V-b0@K6VSd$ck&cxS~ zETG|BSc%4k>8MFxgDb%+vOnG#*^5G zFpd6Kz_1e?fF^K?Dou<-*CcbJHG^aLN}j0#`uDxv{d8z$^mW1{I)@by2dNJN*K|T{ z#b{2buPWR|9Vc#}M^jT{^FpnBNzWwr8h6yw(1!;1MjpnCiXNjXqJW$W#4rN?p_|YX z1&6g1W`QuV4l60D7%vF@_IW+?+(FkY&mO*c;7s^qtVJpV{TE+OzM>3ZIeZMizyf$1 z)`E4x8gd&x9J!g;6qy{T!WZ|PbFcF3Mz&;n+fiK68>{A1FocI z5@xhpszyu{n(N!`so~z@KI47o!$Ym3cZF@S7TZreq5|M2j6t8kmyLqU3WF`wGNP<7 z!;Y9OB=MK`K6k%ym-R02fnbx!oA{&D2{eTlkm;ZsTrKoD4sGxutO>(Z2Kfc+AX*y# z7_R3Z>pkS&=3eK?^63LGvNV1;wG16d?4wqJ-2b8Y9?liIJsmCqB5E0a2jLTMA}az_ z`LKJhyQZfuf6{*|R5f-fSq$Be(^L+)3PW%{ok7>5t-^d&g!ib;#2R!)>QOWlOz{sr zuiUFWIed122-k}3Na~Rl_-k^3paORIN8slhp}I8?gLf&7ePvJ`Ft_c&4o-1*cZY+! z6)5gd`~by^ySux)yA^kb;;zNr-J!hRxj*iE-@G3;narM@nXK76zgE`lB!aUjo>}xb zpLpmmscyQS)NVpwQAqz|HSD z@SEPJGHwV{1c3% zoz!lF>i7|V!yPl9CnHS2LZBg9le2mNnsi6mLRC!l@M>_=hV7mXJ!q~`J}XgiGP4I~ z#X4~pai{V#+2qn*<+bbuT*$2O$`AIrtZU0yr=*6VbzX?wuRMKk6F&~bh6+tE7$la1 zH&!uN1As*wFpwZn@3=jxz0$#N+ZD6fd^gc&jl7;(!OsED=&dt5)Kg3@Y9Iy8jjbBK zjj>t%XM<-t=$_CG?jC&;1WiC8i$i@Q&AM!`;hM2E_T~Nn*f79hjI7!+`$~zp&g$_< za*6U5ny%1-^XG@KN-#()Za>08zs%V%;fgAEg#Y=npZbkPhnh~*3eBXC$pa@ceBIu~ zg|#qGI$$JVT02thTSC1w88hn&$Zz@DKI`)c5I9c=h%q#fsQ~qha)$fC2)m`-Cp}`e@tu^`p(%<*m?4^T_y?Xx^MfK&ssbWF}efUW}a+{+utgH${62s z-U(HMT!EX<*mud#74Mpxd$|OB=o{ITv+)un_Q68KLPtVBY1$soab6L%WS06W!iI`Ffgm)SGV|Nv=Wqa7ukVwKbu_lL!6PUKi&4^16_`-GVCsz~irLQAeBf4d5BbpkM2KSVS%K1HvgKWm{vA9-hvTAkFR0JK&ZxEK zn_N3!@EC*sx}*jn9%{TIGZX#_?~oJ2r4Gkl15^7G{8 z)aJ$JxR$8){$h;TDm3-~= zdY?H;6v~@1UO@lepw}to`_O`EOC4AXzA&`5oLB;lGg(Rc2)6d+(ZhY(Qt@l;Nao%b z=uD|uQ{^HS{p>Z^9`=Jad_6MVph;9)71f8E(t_-phn))lWiPfXmuU}0*xChG`Z%N( zER|}K578(bhrjO4Xs%HVV~eKIPCt1F06sjg_Qkkh{MxO2DD-cR|)u)_6GWoaBDI+jQZutK+<8BFL zmsK-Kq4i=+UDOwtN4fz7=^RjfOVaKsKsEN=B7aKd2pe*r~vYgdB#rrq%Hp;J$ zv=~T~z2NsI7$X>zzetmCSvS$B)CHVd8#G@m2l)4DRjy`vlmRhpDwl9iiPe3;9|RLH z*}u6~Hqzzl+$-qtVL#lfh+mb~v%I0^qkyQiVD@+zbO}zT` zR)JtR^Q_vjG3kMc_r}YC7ijBmZ-D&`Pdr~BH$|vu*2Vxh!m-Wf9Jd5l5F&{p*Tf;7 zeJ55A;o=MCP3*PJUZB_Fr&UM$Km$+nlXdp$mH0v!zAk2+L>D@NXub3|TTXpXvZXvU zPb&KGh_29;hqXFru3>CM{hJ7^jxbtF>%q;!+l#5GrI+lHqo<<{?`E%qY}YBzsVrXU z&*zQ#N$;IE2%n#di)_^s57z#;=2@c`J1V(+rbw{hgCXye5o>V+REd~85zOY znns};F6<~;QmioT!TD}I?7DnG&F;Z2^qKPO1ac1wuLnww-q`1T1-}++ z$!nB#62i8t>Rjtk5CfzkVN9VE)aH!73EuW+5k6*N<6Yg0ziN5=6D#u9e^X%Vmh~zo zBv%xDimD4X!U;(CKPrOXtXN3o&QILz$?B@={2et0T=qQuWChN6i45I6?ZO}6u(R5e zKJz^D(fa#jj|x7NGs^y!xgF=1tjfm|^~B?UfPV#h6IYKM^7DUi{!CYiPeM|IBS!hl zuLZ~d!*|8|yLJM*vh-(2qU{FP7iFIRLV#0(Fc$>EE>P7>|bv}HBS^{1v{Ak0IN88$8Gip=HiV1qrFwM}1(AbtXUo&2t z=2ZD8^bQcaGEkLOCz9`Ler{?RvKA(-{`S}*JkT9Hkfrf@6HnD-ve#Nypqxl@c7UPN z*!C&OwEUa^rhgXiouIEpy0AVq(3bZ2Djbu4QRh;DY%gW37I{n7>*rXM9iuK!d5+4x z-OXBC(zrtxl)#yxP~*0$hdhfRh|!M}rUTo<P9N@#8V1gL-4#ue|*q@NPOFF3572}*l+vFF!x8*sA zm>~6-Ck6a;V^;WNoRyF-H25*9o*<`_K*Xc$U5b<-Csz#}4s!CYB<_$R!AFjYk!sJM zC)Zd4$4N`N7rbJc$64D{aEoM$H~b{8$s4AHDi#te*qQ}v5Dwnjn8dM-S$r#R8y(hH zPhv^Yj43P6+qb-ctu9}}w9i~LNM-?3hPYALWeNre7PUm>v3>O|7*Sp}b*XU$O3Gaw zNL!k-$9Ixu{&pwy2US=li97KAmX!1A6SS=c@y}roA9*-_)O6?Mn72*U`XKK3Cl%@q zteRG&lp!xQCp4SV=@)jVR?0dmIrr4w#lcMc9flw}`RNg$EJ35Sw;|)Beq9XBC1NQ? z!zEXlPefWhit|jtrS3!hp1I{Xvd*O?&{di`RF$cH8} zQw(lW9b!Z*_s+M#gPDf7x1Sc$%CR%df|((!Df~zq39l6&qt_xEhOyf%ee?bt1uX`tzn6_c-fJy zPPupI2L97nw18uS_h42cOrco=BRSeyrU7Tim;1%_HILXG4}k>DPebA@gmH=;As zgaZ{HUDgn_C|wB}N*6dT2^ckFK!tr_HrDK9W+ zr|+Rd>uK)uW*6%o%B8S$=BmI4{Ab?ZpD{ctP1ylnZi@VclObbmcs12a%Ce(4Lu+-r znyrZE(TqcXMBbEVqd;%S zO*^=*KN%gQ`Z2yXwGCzUVQa%?d+U2I7zj`a#!b^6EGD!PDGVpxSiI|hQzN0<8VwzC zS{SN5rGK=4Ea#1%Dtx(bN*`sfdQ}Koj-WvV7t!*nlvh6X;gGs=Qo`P_juK`j``>c@ zRX}PT?qf~TIr27A zPgfwsTa)8d=F|w{+hEQu(}8ML zoW!V<^H=_?(uz}X`e;vBcCeI1WA0(|FS|7G1QaS6zUM%R*7x)E?UQ(~G{2&X+bvn# z#~Wq#z@qqsBC7pqF)F#K`1VL4kCVzx%IhZU&3xpE%tI6IS$t!2o?o4IZtgo7D_TM* zo~wknIeHZnL@;=hrNWLEa-*7V_Hv@aPvqHd$GZ;OA%T&y$*A4^@GI#xry?YzxMTs7R8 zW-ZCS@ljP;^6JGCQtgdCnF>9U$s#7ZlZ1$p}j7r@gE!#3KWTy7CcHb+1jeGqtT?)xkAN3Nmgq@8@A zEvsUN^D5;M{8IQ1bFj06MpPmL16xIys=ce1K2hl*Er!un23>F@u%ge-9p09OKUa{e zaKged#C`F6nDMdt`xw);!riJEa(O_fLV4lv?p!OkP)UmFr$z~V?>pX48wc`mA3nm@=jb*QKt%{ktb zTq9v!>uvo!;zesVV*Q$iUDXG|RFbLX4$2=9yEbaUkS&ncMF8vZS!ZT0J? zx8Qfi4AOgSs`97>1=(ai*=Q=wbLwu?5QLLs0?r77htGrDdkxRbE_u5^*A@Ot$=9t{ z{tsp^#4qBdN)>VR3y_0K^{G6PgtXjfg@dYMF{ms_Sj+{p#}F)$Q`blD_`;K^H$OX} zOaJPBvIsA?ypMG6Wd23&;psV%z6tRH)DC{Ry?eL&3$LQAu7*8Sa7s&XA^wDh-VV=# zid~Zjw&0;vq2$CPlI9*0lT(7!3G$KfoZ-R!iTaAfC4#I> zi9kBMd{^HId(}^KZR!(b7kq~NiOvMvv@kq_6POi)m~iFA53me`X=9zP?DP}fqj`qt zj%C@&e6j7$_#9Kb-91*l=Q<6b&Ts3@fLKOpghv+NP~w!x8;HFly>&yxEvLx{c=g+0 zqYXo?fNaeu6MSa?CPPG17y7f#cUu6wDEu9E?0v_tZfSb)ArO{AUl^{vseLExe&XC$ z1M!ojxM|9eEkoK1Qw&Woqtp?lqC`ocgwU1h?YW?99LhKg@@7ry9^tkIe2+MKQ#tx_ zkZ@!B7&H4mhx1~}aI)rS4QC2TEKy{zHV!~;)LNZ{msalBv~iP9cbT22_VvA4L1y_k zw8)cEzb&X&{t{URWk4DL+TLL-8k1{xe*wBuK7nXSP&z`}LSOPc^7LFqsPlR46{Ioz z>OrS|r~MOX4ZXJl-H1FK&nRw}0c|-)EiYERDUfmm0pvu6LH>EhI15-@qBn+TBYDh6 z*uLJz$Waxyc{52He*h94mM71W_w%nGo)+Bql1K9V?)F3hkJYY zf7S~yh(~BG67S=P3kS0Cnqnf89T^`oyVBNgc}6n;N&sm z;9zCv1sQP|8}sloJGz)xYp**Hj9__9Yv$!u2r#8MGCQhDXwu2Q4|)YggrJ2}r5VRZ z(H@=6dt(=1@5`E@uYv9BR@yd4~TeT6sIpHB`y z!b_4A>_4<1rK4i-m>35uV5(0gh$b6r6#skt=@%j{zw&M#*t9-co#i4>MkUdKHi z-gd4&4r*OV6qdh_9G1*^xZbE)cfHniczy1mOqX&V&Us!ifzBq0G7T;-KVQQ=qrY`> z|0r*=-rdl2m)AF{4{uH?PFYNx)RgnQtYP+9z2ffCvli~|dAYA;(DG{PFra#0zmt{d z|5$EW##!Gud3`l=?dW*v)cw3KT|Axi^trX;@$k8MyFARUE{$yU^8Wc`^e{dC@z?3& z^r*$|*Sk$udsoNHJsLrm?9H@CFzjbOpT}(eBb)Y??e(`?>gXJBqO@E$n%CnuqRO-3 z;jHuN+QGj8u|cuKpV<$}as-z6k&pQ?+T%)26DhC+a*O#qKC?_Yc5O&}$4ocW@)~O4Sqg8GBe1eCoC2eL0#gwUnX9T+~Q~T9w?RsD1fk^xk|6 zpAK5*y0c7cXlfIE?ruYSZhFjGy*P1Zljuz;cSz|1A0f=y)>-0#{fMxtQ+)?k`ULklNk0(-%?2CQ{%gq5g~!?h0C|u~1&C+RuC}0)*WeY(1QyEM?iHZG?CK zY&tPGbF`_>0|s^^ztENXjGb;~=`&q{MKoYwGM3^&`_9{#Soipfk=O6mU$bR@P6~s? zw+MaUW-=2)EkBI>*^QT^lKC3hm-L!{$Yh2{$OPl`i-cdsH)x>B2fMOYXtu5= z5jRD=dz$}6hB((^;i(6E6GSk}20Mr0tk5#LCnX@%J`}-ypY5Ls@9SF9X3B8x?w0JP z*QHX&%}5|kI&|MD4pU)&rwO5hbTBV>4)v+BeUI{+>SQ~nEBP@M&G-n4sN>}?h*|O+6u9`Xp|Hk0i)8vE-%52XfyzJaRS-9QxMe$Q z+Qps{#!w8k53IhBs3dmjSKbj~wpC~Jb7I7HY)>RSAz%d@X zp%Q4qiK$3$6woJ+RxHu*EBB&HY8H$+d=IHi?V|^nz=*;P?FQk-JVy}3hkJun;F!eV z2K42cLizK>ZaDBEF(8T{3F;@8k0LG|rr=V}^aI;hM&K#O2vMUm8nPW?E@7jkoFJBZ!2z4GqH6vA4Hb z;f2^!+)^b>Z+SWjQ031#519X6wUXGPDG-Yi(KtoTl`l}=kIM>5tB9*fZZ~{9D8D<3 zDWn$A4W^Q;`+v(B5aS z68*uvNJ<@)!PP#hjg)Siw?C6U*7lRaG}|l7cp@#?l-6)<_0@}b3}<$Mvc_`9c?wo1 zNG~W;qr8$|2m=wU4A|ZZRd<;Z^tC)sHn2Zzzh;_ArI2$e&aUik-<#X zV4W3sOw;Oy%n90~Qb{pkY-r{r+f~pA3Mj~q8>Nn0z14p77Tn=oY3b=)vtg-GT>d$B zZ~xLV-mx+H7v0zG@IeH6(A4i@mke>biHAjLj0>HTa@$Kw_?MXb4tRN$zQF{D1~`oeLN|s`>JNpBF_|QDqT)8h45Z*sK0aQ{6 zjCPdk8G(!ykW<3Oj_{TXPnG$@gc6LZ+1%T>doJmoAoi>TR!}8f{yFfk>g+)^T@+@Q*{E2J9^~<@!y3NEIvrkPq)obL%5Is5aWR{++{eGL`t7Cs58>2 zQZNv171%TYr*6!6R7za9b+?RCs*ypKndoD8h(~@CK&HIdm5!YJAOeK23}~Iz@?!#U z6l&LDiV#g6qSl){3x9{dv$5isj|vCV>u#{km705BHy^B;2qMHAbV

7@r)fh3w~P4+^oSndU9FT8G}2~P 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 TzhDXeeQ$r~A{bQs`uG0;Ta9@# literal 0 HcmV?d00001 diff --git a/test/integration/comments_sb3.js b/test/integration/comments_sb3.js new file mode 100644 index 00000000..57bacff6 --- /dev/null +++ b/test/integration/comments_sb3.js @@ -0,0 +1,44 @@ +var test = require('tap').test; +var JSZip = require('jszip'); +var data = require('../fixtures/data'); +var parser = require('../../index'); + +test('comments sb3', function (t) { + parser(data.sb3_comments.comments, false, function (err, result) { + t.equal(err, null); + t.equal(Array.isArray(result), true); + var res = result[0]; + var possibleZip = result[1]; + t.type(res, 'object'); + t.equal(res.projectVersion, 3); + t.equal(possibleZip instanceof JSZip, true); + + t.type(res.targets[0].comments, 'object'); + t.equal(Object.values(res.targets[0].comments).length, 1); + + t.type(res.targets[1].comments, 'object'); + t.equal(Object.values(res.targets[1].comments).length, 6); + + t.end(); + }); +}); + +test('invalid comments sb3', function (t) { + parser(data.sb3_comments.invalid_comments, false, function (err, result) { + t.type(err, 'object'); + t.type(err.validationError, 'string'); + + var sb3Errors = err.sb3Errors; + t.type(sb3Errors, 'object'); + t.type(sb3Errors[0].keyword, 'string'); + t.type(sb3Errors[0].dataPath, 'string'); + t.match(sb3Errors[0].dataPath, /^\.targets\[1\]\.comments\[.*\]\.width$/); + t.type(sb3Errors[0].schemaPath, 'string'); + t.type(sb3Errors[0].message, 'string'); + t.equal(sb3Errors[0].message, 'should be number'); + t.type(sb3Errors[0].params, 'object'); + t.type(result, 'undefined'); + + t.end(); + }); +}); From 328b5a32dad6efbd2b40a7e234da26aa0ff5e438 Mon Sep 17 00:00:00 2001 From: Karishma Chadha Date: Fri, 15 Jun 2018 17:35:14 -0400 Subject: [PATCH 3/3] fix(sb3_definitions): add comment text character limit --- lib/sb3_definitions.json | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/sb3_definitions.json b/lib/sb3_definitions.json index fcd26472..1f5f9a0d 100644 --- a/lib/sb3_definitions.json +++ b/lib/sb3_definitions.json @@ -288,7 +288,10 @@ "type": "object", "properties": { "blockId": {"$ref": "#/definitions/optionalString"}, - "text": {"type": "string"}, + "text": { + "type": "string", + "maxLength": 8000 + }, "minimized": {"type": "boolean"}, "x": {"type": "number"}, "y": {"type": "number"},