From 3df6a8a893e3bd97ca3a83ef92f105a15d611806 Mon Sep 17 00:00:00 2001 From: Lu Wang Date: Thu, 20 Nov 2014 12:19:45 +0800 Subject: [PATCH] imporving tests[ci skip] --- test/README.md | 13 ++++++++++--- test/browser_tests.py | 9 +++++++++ test/browser_tests/test_fail.pdf | Bin 0 -> 20583 bytes test/browser_tests/test_fail.tex | 9 +++++++++ .../test_fail/THIS_FOLDER_SHOULD_BE_EMPTY | 0 test/test.py | 6 +++--- test/test_output.py | 3 +-- test/test_remote_browser.py | 2 +- 8 files changed, 33 insertions(+), 9 deletions(-) create mode 100644 test/browser_tests/test_fail.pdf create mode 100644 test/browser_tests/test_fail.tex create mode 100644 test/browser_tests/test_fail/THIS_FOLDER_SHOULD_BE_EMPTY diff --git a/test/README.md b/test/README.md index d81facd..2c633ac 100644 --- a/test/README.md +++ b/test/README.md @@ -15,10 +15,15 @@ - `./test.py test_local_browser.test_basic_text` - Or `./test.py test_basic_text - Environment variables: - - set `P2H_TEST_SAVE_TMP=1` to keep the temporary files in `/tmp/pdf2htmlEX_test` - - set `P2H_TEST_GEN=1` to generate new reference files + - Set `P2H_TEST_SAVE_TMP=1` to keep the temporary files in `/tmp/pdf2htmlEX_test` + - Set `P2H_TEST_GEN=1` to generate new reference files + - Set `P2H_TEST_REMOTE=1` to test different browsers using Sauce Labs + - Set correct values for `SAUCE_USERNAME` and `SAUCE_ACCESS_KEY` + - Setup a HTTP server at `/` on port 8000 + - Enable Sauce Connect + - See `.travis.yml` as an example -### Guidelines for test cases +### Add new test cases - Make sure you have the proper copyrights. - Using meaningful file names, a description of the file, or issueXXX.pdf. @@ -27,4 +32,6 @@ - Grayscale only, unless the test case is about colors. - Remove unnecessary elements. - [Optional] Include the source files that the PDF file is generated from. +- Add the new PDF file to the correct folder in `test/`, and add a new function in the corresponding Python file +- Run `P2H_TEST_GEN=1 test/test.py test_issueXXX` to generate the reference, assuming that the new function is called `test_issueXXX` diff --git a/test/browser_tests.py b/test/browser_tests.py index 9323e07..c6cbba4 100644 --- a/test/browser_tests.py +++ b/test/browser_tests.py @@ -3,6 +3,7 @@ import os import subprocess import shutil +import unittest from PIL import Image, ImageChops from test import Common @@ -73,6 +74,14 @@ class BrowserTests(Common): diff_img.crop(diff_img.getbbox()).convert('RGB').save(os.path.join(png_out_dir, basefilename + '.diff.png')) self.fail('PNG files differ') + @unittest.skipIf(Common.GENERATING_MODE, 'Do not auto generate reference for test_fail') + def test_fail(self): + # The HTML reference is generated manually, which mismatches the PDF + # To test if the environment can detect any errors + # E.g. when network is down, 404 message is shown for any HTML message + with self.assertRaises(AssertionError): + self.run_test_case('test_fail.pdf') + def test_basic_text(self): self.run_test_case('basic_text.pdf') diff --git a/test/browser_tests/test_fail.pdf b/test/browser_tests/test_fail.pdf new file mode 100644 index 0000000000000000000000000000000000000000..86882f8c401cae533dd275be9bb731f5f63714cf GIT binary patch literal 20583 zcma&NV~j6O@a{P}W83zev2EM7ZQHhO+x(7g8)t0W`@6gQPd3?`>{ilARr0*(u5>5W z{i!BX5D}wgq+^99n_nJThh`>ZAhb8KBIMzLrk63bGk38dWMpR}{J#vEUd+z7o3y^j(Yy6q?z*#nS8pQnvO~KYPl9e z$FeQfZ8ou0htRr%>B=o)sp~w^nb|8JUNT_9L;u2`edOZ#9q>vg2W>7%anpoyU45yk=V!CDX%$?dB6IX zpQ|;`(|}LkYe0Q=_RzS9#t7CmWO$LHhG7Jx2E4*j9~3aCK|=>5=3nrG6E;zU#5;Z~ z#CA^H!&rghqn{x`IM8szdoEW@^xN`yF<>q}2_Ry4fs!M_MJEFWLU8b@pX-Rxao`IE z{Sf8?dXTdMMF)GtcI-`NpkN2rp@XR}U$D2FH{ghxnwI%`2Z0gLI6;m9g#bR-OYqlz zb(bI_V3ZaVkT|$EacI6j?0;94;Ktqta|81O zfI%}LzSxzm|}~ zp2Q9h4SN~DkWV7q-&~zBfm9j64Lkz;|9Ns7BIaq>BiVyJP>3w#Ti)re3UF2z^78zn ztYJSp{a!}G>_F+g1}^HO@Wu&!5&rXyq=QIlo}N#bie z3nLLUU|^}~2z2wO|2ubE#J`Lk?k?n)NyxA29#SZXXCW^D1|N(EY#(IoH!!Hju-5@7 z`aUom?7MtF9~lw^I0s2iqaW!eN+9qj7q337`z!5!XpHa+*qXubl@RFd^j4oj`^$^7 zSaCeSzxy|@{&X2^f5><9EPvL2_IG_P zVhqFiQ{UoZwka^!3E#26dp&)QZ$Fwaz5FTr5I>p&K(TwK9R07iEA7D2LAiGXRg;=~FLBrWU*r^cX=hY&CN zY&`opc83J0_FpxAng2ZazMD(HC!wytl0A%)lz?D^1OEiv6^}_L2_S;aDVTTs)~|qz zh$>k8O&2#J%i?9D^|BBvq=-}UmV&MyN zONw`)kFVkPDRr8W_h@__C44O!QTE#}aFhw2yFZqWf1g^soi%z<#dl}Z&&*o;x22qC zzz?TYTiJoCoNc4?O7b@Rvp@4Q!Zoi!@EtDyUQKPksWG7uBAc2XBo7Fh8L~%NLF`@I zpM7~q?6gUdc0OCHI{z($W8c8zZL;W5AupBo3&KH^W07uv@@E{*JS5@~>mI$3bWiv%X=bI1&+iulSIoZjwMn1xEJr5=p-NAN~MhK-h-c&Ba zP!U?ty$(s<5ddX?F8z7*(YhPAdSFPK+0=oB zrFqWG4$v#f22Uc~BXV;WM3UzyE{yg4ATLeoK3)})Vr|psERFt4bhPUAS#Qxye4Esl zkt+ACFI#Hd^!w$`Ohb*B{g8@m>Kn`)!b!OHIBtD?cGZWIhssWQ69d4JXK(54Ygit# zymod*o1t#6>{FG9++*8K22c=suA0I0t?#XBXmku07VZOvdahn}>sU@Ni>%vje^$e^ z$7ietFf;PX@aA=hD=>8_FwZ+Q{^e0eY#KfZ6|rU|q|Z!{3h@~qV&o!tv2lL^*B9E( zl-7BU$;_7;0h_vPDMYy2XpOsxu3DpKjR>|x^ImHS_#)nY!UBK@ZayX+$-L4BVoi=+ zy;j?&cx|Q3&EHUopzSqSwh$j>sj5e@eu}NOyAVHfSoiBQk72Ip`CMz_E`b!qcpoW} zk6G|b$j1cix4ND*SMQy|2)%P6>lFRHP2#H6iKQURP{%wey{7ETZ}LqZmCzvxCsES4 zc~;%6b~g8=PIs-C6p0wqo?3D7f^uo#0Le=uv`m6fsux@vn)%fFz*Y|zZwad>yB&>2 zchwDx>-umMA|u#&-C~P8hNk025XYf;qI=~dqPTVMcvK?_h6AC4CYR+^ulT%Z)Kqk3 zN#k2OZ(~iyX^Wu`#+FyLB`DibW+Q9IEMNZ^(yl zg(R<_JT6tTt`cVG;!CJM;LppfL_#FVTTr(!l%D*A5Pkv0+z^|+;b?T+n)b2{+gM(u zlf;yIbJ8f^Ah1|F>D}~Eb`yFvoS@3X;+fLwDXw=e$v6Gux8b|TE@72+zYsBF2;%^p ze7y1=qnvX-3cOGZy97+5n@FWQYM=WhD+HUR+a=hb(W+gQl?g}4wi+PWJLTBbvp{PU z_D}GUqEu;9Oh;#&KtEnz4TgewT9cir4t~I!>kwfpQ!>+~TikQFLzjRv?awIgnG16% z^n1bWSs$vkDQwQYq|{6tRuZy@8pT~sQ*CBb$FI(dul;_Fl6Bq$%x)Q2|JkDVIXv^P!-&*kAOXAM3stD(^pfRDP&}r>XLo#QptA2} zrdYLe(ukuggt2efcrp=(=O;zu-}?T>Md@nJ(T0g)Iv@?!1hhRdOd}3AyA!%EvMTQ^ z2_()>I0?Kwtul$-J0UQI9`0jZV%8ntHl2j|hfMN-G?v0c3XuxM#Tho&rL}S;CD49g z*XS~+cv7>%jzKGbJI~DIE^=gLgE=i6E(I9ogXUDpaAc$Y8XMkVUB*qxRCwGf&H^0R zCHs3p`yQz6vhq<*<>RB+H_NtNuDmvqM=x&;+)pYXEGa>e#8G@CXND`P^e)=?r0SJc zMN=qk=AA$%hv_^+gaPWVvrTnG@^#(O!o@mk-z6HXJNN% zZIS1NTKMzE{qTxOO1b!vcQ4|K1hGe&a^le@h!X_mBF#r9_e!|$n~-Th5D{xw#tVp@ z57X12{%VkrY_^8g8tm~J!G!6uu-QL#Mfh`HjWI+PsC_<9Lf1`SzhP&A`L7nA1@@XO zx}MQrxjrL1I{q}}Jrr(_%%rYmg<%F~cp?>g5@nu2^u|?WyyGm_p_9=ZCJL7u4Gb@f zti!j%^C9<>{nrE^iM7SD7^tzpq+!dr3$$&A$vg4vxpHv^C}YT>>Kkr>#w!f^$Dj+0 zoj(Fe?K{`cI`*gDmK9Th2-yc`opIglRGuxNSAi8D~ePZa>(Q$p%FJ4 zXJ6{ynPNjL-ctTCQSzwrMQTVNWyVBue()l@fHa7{1rH*VHP26;pp=VBl44O4W+MIc-Oc zaMI}WQ>GA|b=x8`qt<^$F?cKR)!%O^FfrkJO^XZhr5QBfyyhtQ-8ct6ZcLpJT!u)J zsmq!Dxj01S2_zq0Gs<_&$6|vvI6w(WSM`oL3oemjE%o!*SYK6ZY0KAB+UQLqH zA)%hT)u1ma@)#leEsKr|Jdo89F-FT~IrW`aAXtYr#hrRa=Y-8QTXcE-)dDM6Zd)pv z!vk@E8m*r&;wIR@@HPMB@ePmovOuw0Vh3;ST6~?7_+wud zSEFeRy(q_3^Rj8NTHEuF=(&DOgA)1xVYJ35Cay2ot1!e2yVJVc97;R53n_L;MGLCu zI5jGyJtoz=vSsYFVcQetl4JF#J!1+6c+(@_Lhe3poQ=l<)Km>-fUcML>Ot1==;uv40m$Gc0pm=UTuw(H8t@{kU>6g61}^W!#gP$J}~ zlx!RF5`_j=-f`hRaleyXIy9%nmJ>X(N*bP!vb*d`AsH;JnNwbr(IS_7ac)=IPPrhq zt*zdBEBfOyDwN(BwOXog;+4b-*s2;jUblCe*pym$7{>PoOL-un&OGqp?(1T|)kYn? zY~599H3n2d3-{_j`y1!;TBQ=H(^dW!T^(F4j*?!RZIfkryOOD-t_i{TM|7Qv&$Py# zI)qGf@N8ABwEb$YLs1!TAijZCx^PhM#pG3+R(%oo<%WIsbBTg z7nTiXOH%D&2Kw zgd0O&U`NjmEi2XqggTZ)z4VAhX2k2`N#9@}N&X8I3Wl%!7VR$$X4-$=7Ud+e=s?cVhygsj1z zoPA^(y?S0^|3w%_C}g{gTQxc`L`$Z7k5md2*LcNVi*LfM+}qi1SsRj*CV>9?xG}g^ zZJ*j%9bNFU2{Z4Fb8Ik6xbV=YPRT*&y#&IB96WuDe?oS0r_~NG@WQDIp6T( zGn+U35EgxiNsFkGbESRF*rs{hb;0cF{!ykXAWJkGiR?{mYRZvs&rgvf)IRo9nyjPw zE6?NI3hLi~yVwT=C*xdURj)LeyXHo$z_xH8smMW5C%@SN`6`MuJ|AK(aND##o!vJY z*?v7JrNRLMa&dax2Jy#|IhW(%t35*bhRbh}ALsqDxk5VP%|>eTV(j$#F(*ruN?kh5 zQ}+q*Ne|bkt(B1*mUE@9rmEelM!uOC4j1dx{o3Me0oaORU*@8?zUmya^M7K~^CK(k zai@6N$H=wX%b7afZ&O|q)HzIdP)Y8wvXk0Rs)SA?k14Nly(G|QwWXm*XE00P4F=Re zqLj(1Lb*mo|3rysBdVP}UT;$jAgTa5_|6$N!<(R;@?8)S#Pse=XM(T47p-OcrUNuQ$Vebr91LRpWE`0d-l#Z1IXEq9vsd+pn9xK}0m#WpZF?8i7>6GFx??A7;BHD$NBpO4|J zUl9vWt{F4!)#@+t#ldqLn58I|PL(vSV=DkumXB{*malCxOX7=q%-4&C#~erR2-Gze zgNW}NI!3SQwDUQ``t?L)6&jxe7g0ocq(Rbj9O|0vbgPGhY(m<{vfm`(jNO6QvOB(> z6GllseJ?9r(J-5s^|Gl#ju@%k&1&jMeDp(Eb*@>x7SlU@;MG> z-7d`m7T6MM1A3(zXrsJ{MaRENFhj@gt6jeDq}IGogQq#mCYg$A?2%LtR@IeuNYhEy z19Pp+@3n>@&*?Bf_iH_yBo82TR*$7QYu);Z%ie)Yb}m)0P;SQ7M_!l}KcS;n%8#IZ zT-722VN2=lM_%md+Wg1urNX|`APjR}IwH3xgGAV6q8r`% zH11UYqY>J$me3DnT3f9ivfh-gh^YJCSJW8f4qTT`*h-gbN(c5IM-0~*P!x0*K7_L6lTq82|RdvpA`zKJB5f3}s3uSF+Q z;S=riIk7*rIR3bh%a+iy%V{*GCN|X|+IPt-H9f$_RM(s-K%&!+^ww9Bl;#!mHl`aT zG>?-VYugRlSh+seUna+tddbg{dFk8yr71=7IoQ$Xw%~*gW#Y)TzKDf{qFeG_0xa`P zIv~OFR?TFonJW=X_{ttw#N1G!=381%+l01^M~b z9K2iDoxbPJ-F3P;yXNlyqiAhSQz81MUuJN`gC&sRR^d_`*Ts~l=b4fAGC?Jl#~tI; zsPE?Y0K67jx~-U=4K&U$J)Q^dC@>+>Fe7#PP-`0BwPy!($zJM8(dH9XIv=(z^_KTw zjUM2|J^ZXy-!?|yHf6g^?Qi4N*U3An8@uA`A^%t5G4kw5n2%)4g|IWfZ}nCYRjMET zHf64;SmK0Da}Xzq^mQ8na+V-c`-n~YmB*!nDWjS_Z4I_d0L84!kAQf9;)IHwt|x5Q zM1zfkoZrN7lO^_-);^hk?pDqSq@+i1h%}rEVDkE>WPBZG3FgaM!Objv8 z6nyMai(IvBOvH*>IWtx#agn^;P(D^CZ&RHo@sg$e*RfF9@vXBafQ=)>uVFEa*&-&+ zMS0tX_-@Fpd=7+VC$z$whu><>qOBoX|4^_7c4Y^pIq1ol|7Vd_J*y+$MNintdG=-v z#%i+c%xH(svo#r`WX-#nD%3h9S)fZKYw`7zQ#vU2(}?cxejG-iHh19efTFwbgVu8x zjf}+s^wFS>!w~*6eU|Dl`)#~UW|qfQSuW91QP#~kl#md#Fqoz#km659tu(K(zUF}AyX+Q<1H z?lIzMHl-xVUMFBW!h!gs<9%p;T^*qZpA@`WV2HAk5$XnkLc*+Y;71X?5l!vutY8Zp z4@il1Ji-*{miLJ5!VA7w>9te?^fRb6G&AhnHcAFfmZ)1Q)d9-~v6jVlIXvc`bDXo) zbyS?oC8i`hBT8fKcCCgpRJw4t^!1gIidE_N8PAque1&6+yS`$6t=-j>m>ON8!oPSD z8IES?T;#WYJpO7Gt;#qTUsntb{XPb~PQWDe`nc7fX(CdTJVfMHcv|r5W#@O%mR)9g zE_~w*Z7Q$404(~=B4y#Nt5qap!p1**Q0ETbl*4u|KmB_st`rO4;jJ=ua=u~^IMj)F zG6`L(;_OSV^J`1mriKd~sb#VjV3V~SxHOSegbMag zAtm>Z*qwz+8?2Yp(Gi?nMaDGX2#oyD72Pq%1;-jKRTYCM7LRWZaOFe|RRw``aMFqVXko-RoF6X41EHvhcav~PA56Pqdj300Sq-^WYS{<}aE(mc z6I(qA;w3R^gx7&OaKOPOAdTy{>%GdAAuf?x>A2_pl_2&FbtTbDTBFFG{QcH?!ldR+IkM2_f|1`RC-x}7N*B3l)i zq<~*wgnv2-{~NT%^uI%E?CgyHL(rHA85uZOSpFycf3h`3Mow0S{}ZnLeu1$&b*0hC+D`dg z-`qLhAI`=kYCuC|Et10E>S$zMW?&=)A$9%WG?amnk?DUUkb*)Tlv5MA5 z$i~*=2NKa02%8JAF$|l#dvIiH3&b?524toN#0-JJOo4!c5)c|0`Kce+2G0Y;D2$N+ zC6EV9XlxDY5<-E|+Uo2Ml$ps5uzjr02ckB%0%B%or`XY-0v=oyfJkU8gcI1EpTM>F zZYypqL=#w9#RPM4`mIM*@i~!`bK{ALsjI7l4O@+aZG$%hS#|+ZPe|qz_;Uv7;sBfl zd-T?>yRy1Gu`&+~>A|cK7!$}AXHS!3D-!@8&^`lPwde#S z%3UzCH{j$CF%SI1i37w8`q;Ph-TdKBoG_yw4Hp}0TYC*_yDi9O2Be&ThFCyJH1_Z4 zL{D_EJoc`pzR5XFP z!CA0>X2uW>O^%>FzuZ%Om%r-Q{+g+A$~+ zY%SoLoxdn|s}r+w_R2)|pKLg6zc^LEU*1W_f#ihdm%q||8C;aKR_<(2v!JPT& zZtM0IYT%CV$k{uw9oqc+t043=Kn97`tq0XF`GJ@|4ugbn&7Q$@&>_2+4L8p zx6xrzJE}EdER@)uvr18Rl@0yBuq9;uCi+V zX+yOR59xl(&$^CPIEAc57<0vKV(arSBFAwQ_2%CmsT<$$Z>d<*`{zX@`(Z>u?r%?4 zLVEzcD*)ezwoqH(>v+QH2DdX24O+ooH@s9AD{QKNE~MtB`j6faQS_Y-pEyA+e(9lp zlR%z*3LrujCalT9nL9p>`&)_>MIPqX7k5VMsuD1R{Mc~Ts8~6AupTWO zRvaq}7{AOFYNVx@x?x9<(A+1E4z`whdsn>Qf{S|f;v0}5GSMN1?mV&97 z3@d|>gueu;>}IAdA_D=w67x=lhoIGY^04PTXGcXn>Z5CJ26{Mr5D&Z~OQdDjnux%T zY6gZ}x(@BAP{?0Z>hwx%WBlqfkJ$IwLq!kz z0Ox%7p{BddL_O(V6tz*S_N0B8+n!n4`^JWfrN)?a`VD8U3Pa3ruE9I-6EXE)GDJ*@ zUzBd_$k2a>AXpo_9q+MombPu49K>=BmAj-7tQVKDuGE=!HC_XP4vVCDg?=#vc5Yy< zjTy)A;<@Vq8Fa>FPCK0B8hb}E5W~d^E?Pv4!~r}T*4V0y!2>t`wo(TFzErhiAmpuL zDm@Rzf8o#mYn2$;?mO$^Nfwq|ZDmdp=|irz^oObP=fRx6wZK5_)fxtPuqc63H4+5U z8AC)ip8hOr-p@ELjJng;0F0%rn)*^Et54Snc^!6kp3Baqu7DXjg~?`_L32<}r|}yW z&b(OpO8$tE_9cSYZsi)gC^_Izmp!XoZze(!XuBv}i@OXO>}5+R>=TJmlzXM`IWix^Ida(2qfC2iuZp&O%VAwk~13?6M=Ni?vOA zb)Qiu_Tz4I=ZQg6SMX>mL{*ZM4T~-l+N&^xV}Hsr3BQfN`a*7Er4Wwi|ddk!mHur&~#{ zUEMcH4QmdmOF5cd+Fgyoiy1~{pov(#`)|ZwH^si1fV*k`YTr=|wtF!&xF>li`Em=5 z!4cOyK>jZ8n7MwjSp&xUBs3vCS%rb+2KOf>nJ&yUze_<5zMQH$H?C)$3iqLfW1(Dq z3Ml1)%j=rzl0=cpjEDzH6c{XohE-~(D{YChEakqnmE10s%w-tw`?z=fO;mEfZcEuD zN|TVu-mU(Za7^JM){<;rGdqznVx2wGVA2#3axjv=4j-0hFR{8 zjg$5ab>~D_+irDfIcG>~t;-Z5B{dm9RnJno5)cDiZHZFjv| zet(4Ut(%l*Gr1Oy5zi_lEX#Gxh*NluQAEAg;HHqX6D-C=<2!~j_H_msTr5>;4JBv& zLH5@Z=~e}DJ$GkieAxAm{`q?A@??vd>N{K}lm5?q(B_E9y_3X%e0BP;OQD-MJap&DT3&;6C zU6d|~9o=D*2FNbxIJ`>FG4N^cqoF)J&F|XzZ2b4jEmeBg#)z4xs1b>*36!kDmB(IA zGWN@x94&~!A%s2R&N3|4v1JE72e(SFNCqxr!meHGrnkL!ix}US8qgMqi=E8qKzMqb zPp<$?5v!ike0b>0ZYT`*(9&+x=!MiwdaL{bHqaO@zFmPh`T&*QTvoW>2P)kB_28HT zKeE!{-~}p6swqJ|;f8FknwWG$^ZJTV#>ar8m`C>Hlq%?K^wNiT&0K#iYgn^_x%7jr z(ZK9sL8#LU#N-W~6*eu)yVUhW|Rt7|5BQsY8dZ?+Bb>ju=k+%@u^?3*e4xrIfkue%6%VLg*ZQ|u<0 z{W!8E?$3^Ef$dxrVcb=gyxGzicAv;v5SLjtPmii3O@;-9>NDFZd&6Q6ztlF}Gmdsk zIS1;E04)Z}!0*OP-S2xtr1tdy*j&Z_;*AJr*3;0%gK!pjSX~Y*i@leCYfHEGzHCEV zzo60xEs5f)1SLU$5qn0C``-gATB3}!Nd26yoG>ja*JtHItUgtenWPKw^_8IrYx6WU z5VN4vrqLko8JGm@1gKFEFQeI%;3vk8gk;af^QLE{)&y4mjXO#Exvc1|w$Ub>WDS)r zHU-Q$?OL?3swaPW@98TFortfXGZLOFWXMqt7TWwxXo<1a6=N{LL<>Z;JZ+uS{w?y# z`r11rTI^dq3|3wXWEV!}haLA$*4tu>-YB!9w#oc3tI6x6C+L(?+aqBnsQ_}ZY{O&S zjptS~(5vXAt_b`X+eS9;AljHsRWt4~xCbQ~iLxHo#>0qR3NX-v)hj%d_ZHCub^ zFZMJ@7Ya{&$HYth5vex!EdG$!tJUIwk!(K_&zWiLo0U4FJD)X=KUy0oj(;S1&iqwg zbeE}1%ZCmytz6#Vas>Fh!xOhP1efhtpBn~PomNkskE-$o=^I}3!7J|*B;*;=|1Ou= z`A#>fdz~VWydnNdGP4pNnRm5BI~j3d`v&SQA%y8&%!>HoF_+d9O_rp=xL+KStJJv9 zutXRJ<#)|^jhiF)i6w>TgRJ@>lGK#-s(FqVmdoDraHe6p=SB`)l|LYK4tWP!_E8_q z+o{W6EkuC8Fg-~+gXI903Od$0XZlhdY03+adjR|V`vn(I4y|RJmDdIcF|+-jo|fge!^^VO?h0bRy{-(Q{KP|F=Ny1?)!1WFCEU$Km8Bzugo zlL-?D`z8tU6hY)6VdfIdsV8Od4z;XxNK$X5l=PZ4_CD0IZK#ioDoM{e zOgKKnH~^=Ka_vFYn#)JwGuM!Z(BBm8E>I~jyWW2{D8&|Exqq^X2(cW?XuXtW=~Dm{ zJN2=+)k0veTr!PV=?!jlMon?MAj)Z-O>%1zB}UV}x_!#Ut_;TerU~%gnQAROsS;_QkV*H*#pg9grA#wa6QPiU>V8 z9zqv25(EgE-j|AC7K0nBv2RPlM@q~zn8#zpkdx0??u4fTWlgwcFe?C$JTpyF07Z%J zk$gxiFu0VE&Dq5~2V`aAwS`5awHCe1UV{WI`3^1DVFXs1?$26PuxskVN$@ajKZhUh zQOm}O?ovT`fHBFm@4rAZ+e+?NP)qc;t3X!{SUum;j=u_hy`=Ij$P5Y6`oe!sq^X*E zu^xBXw7I!PGF>8kFEhNbbB}WxjRA(605*!9&L4uo}j$4_Md!3K=glmt~u zmFD%$P4WY_6xcnHTrkKwIvRR!;QN-`udxoN7`XCVU9OZP-Kj1Auug}pNR7CC2Xgp~ zF=Y9>+>`mx_X}otiVl!^=M1IKTr|KAyD%>F&euSQRRb$1sty9{w1L0$3n%{Sv9HKe zWp4YwUq=ce9BGRVX0OY z*2D2z`@*}ZfvA2o5RgxeBzivcHt=1SbUfPY#=DK2(DQX$P(;xP4Yq{)Gk${8#eSoV zuw0y`p8TDXV=d-&Z#F%2`({LppB!$D6I0mWC=seznM-)EDo0R6qk@e-*CMKRK^IeL zsI=7{fLO?v${}o;5DAL6*Wmlv8i-Y=04dLU%&1HhvkZy6x0|?3@E4hwSc@+f;y6=%CqJ*nj5Jz6A<6F@!l5>%Ul z^3zsTKklZ`I5PBY+0w-HJH9vat`4SwNiW-qAN-a6V{LqMjvxY<5MWQDW8j#=Aj3kt zqge;cp^eK44sGSC007kH<$p(VxaNSK*pW@meWnd`+aijzp?wIptug+H7rk>L*{?!QP26iRFa zaN2pvh3${JUQvPu&?6K~Xn$5;Y|@#D6BJ?_TsRDA(x&}Xa2-A1Pa^5UHzU>@@*cn; zxU2H2x6HP=kV%>Vp(j(9b34LH9+$GXgW0Z+9u~!?Px#U+Bw^FM2$l`%Vm~SHyuuLi zC&ZvfsDl`BJfmd&j0D8%syqVlRK&%=iTPHF7}U2rDV~ z5;Z0C zE3k!g*enD$^jVtBp;x^GR1z#TQc*lx53};B(G*ql5H2dDri|Z=UJ(rWRX-1n{Zhm! z5pBQ4WOI+CyypKECi?jGYA=vr#pAWW_P!csQ-Hwdb|nly9^vjMz*Zu%V+gncUOfmR zdmXQQh|D7?)9fi?7OLJZq%Nz(+Y_AXZ}Z9A*n?`iyaLhVSAm(sZ*Ak=J|BLt_lmg^E~fp4N#E%0WQr`7x}6a`aVMNp#Y? zN*rndjM{vXWh$wTp1eOd0bgb^FZ)X{VL$CJlyntNI(%0Z0e4VWMdk&=YjRUqpNnOD zgDZ(~@IJ~^kVa7M0F6SzNzEGBElq1+($XL9^pE$laWpfDTy*AFAgP;!;%NG)^mNw| zv+tq9md=URd9!!g*PU86LIYqy*(Y964LvI?c@+sLcZDy-X7dlb5(kQys#dX~R~3F; zx1@0l2*>o5Z-zy2>Mz#E=&u^VRy`V46|9*Px0@$AkW7dCWpTE|2AIzUrcD<2DIw*Y z1=g$pl>8iQZ=+)bbGa8CU@1JnECwVy6V6R?I4e{!P}kF8Cs0_^l6k_uzXN z2(qnPzfmt-I+F)$dN;Dm-qGP7=*%5_mLSj124_R!bE-2n-#}&(q6VN9DL+GI6?awY zxSAQOb-fxlb|^y*aa45BjQ84P;dtXF1})f6!I+8>xi(0e)+}($-HKhiY8@CNMQH9q zNN*>$$4Hceg>6_LitG0tJ+z4>{dSV`Ez&IDSBvI5*2Ek{y+2e#D)Wpv`-a|vX^f6g z9tbKwoXYP^o>e&NJZ5g#g*z+GK|B)^FeO#6UA!-)u1R9HT4{*qS5jZ}*9Hh=u=`FN z6$#tlhC3%>K<<44G!iR%^GH|^2}diF=YO3wb-A}F$>YTvKvN6x+@9Kg)7FE)qJNLv#`mbu6yY(1t*bBWvP3*ZI-4vlycq;Gq*}WNn&!Ksra^riL;PVOPOa5d;FdmN#g_yHg(kHnXI>bkRjHXn zznh`z^+`{k2hNsI(<{JM5}mN&2qwi4;JC$;bmZ}lwK#6k9B05cg>1hG?dfaC_(ein z*zG>{i|G0!-4zXfCk~}Zj4GV-vyPaaFDR#2x&5l9EACE=dMjxK3bf6JIf1XW@q|n! zbQP5Wv4ZovNZqun?k`49XjT}DWwP+qO6efS*V^igai_rw{I3HWG@$?%n(G0@!2T@K zaGA-Z=ods$7g;9vyW|k|2a^Hi<9l~!@%75@D2Z6T&1ZjbPY{hW%9cS4&93X&%q3XA zUM|vgv3FD-#NLM%T{iIdXCSG+TG~8fJmoaQvD%SLHvOf{$!&t!QOM&q*M|vuhXXxM zY|)1viYnuPW1ALDuZ=6~I{ZgqB0|#_ig}iIsw|Dcdq9l=cW2U?(5kZ5cgYM#?$#}d zhpF|8d8$z5xa362c`-0y%Sf@sFdoYOuF71L#qr%z>8JWF+3)WLl6M{wREq=> z8Z>dXhsmpTIg5t4>rIA?;ogSE-wE*R>Krbx;Pae|lb-RJV-Mx}ul2V0T|i#n(B1?3 z(BoU%w(JnPMI-QjYpIdf2cIo3x2L0=+-j1NLT=!EsUL%0SxA01vyzMpJlZeYYa5@! zAl;u4Y{tcV48sabM6`IIBcH+wD=T?DZ&>15GUdx5@Z=kyMPM+nR`ptb;>-1LRdg1o zDG5@XpiWF^N$Xh0=?UMWQi5lxno{XvJNko9L-$iW(Q!^SYzEBpWNnrANX|;oLVbl^=0|Rc&FARO2^d4w`IyPfds5k&Ceo!Y zRl1oBSRLq2jzuW+Yw0k8ay+c~;3>AUlXa~4+DFQo`dz4&8TBQehlpwu38RG9gU?_( z`)O4TVg{aip;Hn$;*Dx)KKKDfW^BUZIV1GAapTWLQHWh#PuC<$IZ{#r8P_6t4dKr5 zd&s21YA5`F-pP|JJdwUp7PyUaUq7;hif0YhhfG^V6Q;>tX`6DR7*;>~V?clDU-5<0 zd#8wo4dzYF3y)s(Tv{*Iz-B|(Y9oi)U>vhoOzDNUx*OK%BD-lW0zXXVm>UKJls|<^ zT+E+EM^5>Tl!jk_LNkf`9}zQ9k%5yd*d(@t9soVAi+~OyXL3H3yw+(wHn0<^>Gms% zA)Cfc5$vMWuzw2+=%9`;5V8mdbH^mOPoC?W+KvRC$4tha=88cUUzc*pLB>kOg7UMC zlNE!QtXJMdvkqUdDA*6HmGq0lH86urN*Vb`l-XObEXWnfz{D>?_oD>gaP_6v#4;(( z$~B$9J)5|91k}CcIPw(4VI+a9JKqPnT8Wtt&HkkBP&j(F7rL#e7s^<hU@1d@1(#8#+aY8MJI zDKiB0@w4K6Xi{sk*|Ubc*$1@45zXb3}4GACD7a5j^bMM0OpUh%?Msj0{?qx=_720 z{{9b7heeCf!J_8bO8^)`dw*$GH0n%I!IhYla9!kM=Tc_#f%A(_D?8fq{`BMWx$8fp z*%@cLr^Qi6bGtecIVV3v#YIhCU(L#F)xGh#X?+Ldmgq-9)$s~X5ECk5e$Oyw+{F!y zxm`&$C>dz6Q=+B(ZxI&LkeVf6$?ujO?7%(mweH5LRkI5}l>=#J^4q??1Qz0p}y9&9A*^1An0#G9rzlG@s8 z#;M*td?)}M%T$wbhQ8jFlJ%mfd~$|@^R|L6fLM9}_S_l%JW0KS2$^lk+_QNPl>UtSy>tz+0hI~B>ViU6)@UB`#-=4w}+3d`X ze99b{Y3NkXGQyuKlh~65@L+lAJ=O%inLRT=%5^NQ^GKLq0A2qnj8a==x+Zjz@Izrm zXzB*Pcb~@}6qMx~!MTtX&v^+KL&SSte+hq@41EUf=tQvZ$#*Ib$a9S>h02Xr?Vqej zC0J2pQGdi})7`-f=F%nP+aWP=$6#9uF^zW6^2_msQoKG% z{te3S$EY7%=7`oQR+Gdfye%{~Q+#Sa+Re=>7Mpt(ruMO}oG<`M=xXsmGAo!__loQT08HS~ z&H1ylJFl={?}w*_@;?|m_n#H>kXhE=#So24d8kv&(AV!ukVA(-QyO~Nv?!e~Wx!Y275=B&e+JO_{enx95B`0Q?j!`FmFl2uN?R@d%`viWwgw|cpV#Prk*KmQpo=v+$* zo4KQaPh=pCLrFzGJOR^9u780JSZ!)DfU2yLmW@JU4ad-L+y30MF}Qzo7t1carP3KS zt;JWNwz1J-)$IAH$dvt7HQl0|#Q1K84Snd?%UgMVoFNM;$|=miqN~>=E82uPPs=u$)k6fyK7AVm~Jnlvc_p$N(szkBb@JM+FXcjnBQv-es1>}S^O z_0O60{0NeFKT+AU%&5Z{E^=H`eVHSocUjIec;X!yi4<(C+~m*uwS2*Xi)CtVu{aM( z;6tJorm@O=F*Zd{ut_3@JM8@f5pG#h%@D={mJN#p_RDelM3ud14~3ZOXd@9+#q~)6 z0=j~WSWm-2m_9Lg*%Xc|Z4Io_lQPmO|BBhlqEpx5c}lhnB;VhRKQgWP4hAc81+nJw zl$hIk7T1Za2I)Rf#b%ZSt_fw}qWXqLK=b47Y6)2rA0K-CBzmj2)mmBpvQUUBoOLD@ zW-5y5s$yg11eMHx@9vg1bii>N@lPAcUh95gw)*6*&L*_*NOgs|J6pOym7g2y8odP9 zk-VQxk~ciwL@=;Gi2HTqR*Y&PvxW650rT-$aleCyu7f~Q2dOU$t0r{s>3C#1Gt)V7 zqq2DgBED_x4iFQ=)YI}zg*M`*@P!GU&kaIRN^ zhDqT>)bAl~&2{TBM8mFa)lH`AzuJ{xk?$rH3sq+grJM&{k(VIlrnE)2kBM6PQ8|8p zs{xiAeBJ^}L^`F1c=Wvwu(5xvG~n#UQ2olW&l=I6SArpkiZ;-VXs2vGLv83R71Y-V z*uS`lxwRWHwHU2IM$9AG1Qx1+r_7pY&v-lS*~YUNjTQAW=!3BO!^&Z0X*9T$uZ}5U z$J1=QU|Tss*>G(+?cGUJv@z9j+Q>S$XX4ksz%K^*+R2OhtU~Nbkmm@Z(N06}VFaVxnCkZs zx2f;&%yGfwVk2^kstojX^6L3ps!gPWC8{JOncx%H(YR%Fm(P3Rz_Ds{>Ev%rK@Wd3 zyj489n}pv^N>|M^ESFMChGbIzC{b>D-8&mHCIAzFG%U3E8issXbJ_dc#CP@T-WAq~ zoA!V^7DD60xas-KwS8P#M)@sA410{H1~FXhn_P}V!_&iDt%#BSx)@gr?;8Z1@vPGE zIJl~9Os#oJf%37vbE{&thn%V|%vOc`^f41OvfL;I@{~?c?5JeqRWR+k-*McTQ-s+& zUZt3M!vqO}folaSUc~1yBFHoi`sTjlae36Bh1_8bi>uEjQ(sZ7^ON{XPdYps4XgrB+l#Cq&{N|Dk~J7DYF=#-neVz#(xijSufueD0#+*{irUMFI*zH_Jk z5c(#o6{@Gus^FJ{!d4g3tXZcZRP?1S`+6eDxIe}?SZMTAB%Rmxg}PKtVfcY)w+Rcw zXQ^`)PJQY%7tqYnb^}tdhsO3})|Ri7ua34^u4fzlkS!OGn!&!=TO<^BL%C&Gzmzgk zOA<#j^`4D!=-_X$39eJwG(4@3-8VlI%wqoHzC6~BZ*KnF3+QKh@$W`I!wZsDQppiR z;RiQ!a?Dn7ZISV^ZePl(UFSrm9#flQ&H;qgVWu%$PVNnvvo6Nra{)8_*@`L@?!jD6kgCftM8?Tl7Cf-Xv=&QgV0Mk=RoCu@j!F&WA)ZCNLZ%^v#7+Bp@YXS=Qr7Q-ruze3E+%7M*SQ{C9Bs5Wl zspK_GR1At(7UO=L<69hSaeNnJSJhMf)LDa}7Y?6w3%aW7qME_QQ9TaOiV0gdP3}pS zI#yjYo?yh)U6RsgoF7!*2<=kTC3P*S8Th9bD#Oi{YX z*gS_3@lAqpRKREa@efHJdTT{U;sjv6nb9tqgf>4 z5;Iq-Q*UH=W}=ZtP_)}{jY2yx~Oqq35nL^AR4-MRd^18I z5JnRIEYrgz_p&)>tCUp@z(KrD;QI@{zhX8_K0VRp*t&ESn&`E<@&`aG%gy;6lU9jql!&D9%GhE-{JaME?fP($dWb_Pw*8wM*0 z#bo*+8qqEF8`#g_X-Ru+-tD__%eY2Ut%q#eBZ_)FT z^ho@RxlkFZ)iObZVJ5l1gM0n>sB}zd96&&~)sVHgHuSL%JX?fJVr}?(nrj`hR37`) zXSRQKuubOWZ|-YcKUuWzm^b07>_+6Guu2O&gpb!N6A+oIO>fOD#yMT;eb} zcac9%tb4;^DlmdfVrriKF@I=jZ6>ZD&9`S`BC=6HI=j#x96nJ|OZB25z@d`yh!o|B z@?oAn>rxz>#WnE=tQi^{=0Zpt1Rv&LdByR$d9Bc7p|E{*DDO3Pb5R?r(T+z)TCJwn zZW}ZTNioZK+Fdcr7Ggv^=GdW0eab;)HYQcW8O7MpchdLu7n|a)V=_Ip zvxeNnNKS8tp^Vafwff(OdsU`G-u-@MuNx7MGf4g;7k`}pU9*=eog9v95^6+JekYhM zla=pPnY6s7MfYSHrxg%aAf}{@ymPB0bfVNm-1%6C z2LQIM-UUO^NQb2tKKoIF9{$M{zxsJo+uDUMf)_q*d;(^z_kr%}67OCeU z*t!xRGf}{-^s3FKppr735c(UUxvl0fW^O^bU(Zs`r6w1@r|oa!dv<0BLG`)+oH3h0 zmbM48X|4L?_g++~7!JhGjg7F82SNfmY8!`N{H)f<_pDItS)iKB%%v?@r3Ss91m$$H z=|16RT42mrm411l_mpZqSI_T%bji#8N0+>jw+GtKk;2=O@I+(GoKO@_7Yr-|fk^^D zHz>d@Uk}O~%Je@&7Y}z03YH5fp`i!`LtqdHaj5A?r@c+nw*#l1} zAjr_+o~f@J0AxUM2>dYsc>DMQ;n07K0zf%9^e^xh@Za45sb+2-AHZzCb8Wo@)yfpE zzequqi;*=iIA7v*JA31n3Yw@*<7PU~srV4FED~OHiMpsqadyV%abC+uD)3h}SA1B- z8CVtCi_Mby;xk`bfCEu2JV9QgJtJ~bF`0R zoM{HHE??uq1a=2~C)>WWhkfUaFn=W?JUy~-M`nGkTt=zT0nA4|^inu5Hj(FpSGJ}? zfH~J{hgq%g&s8Q*m!S)l{J3IntDp)n;e<_H8aGmHsclPElHyd3R=wBvM5=^LoFPjL z;nwIFgQw~vw2r($rJeBKsGr8`F$JOAR@f#?&gGTJv4_P(jN|>n_<}BX^X}K1dL4~! z_pp}Vy2~Z9;IH-fIW6?IYE%+z_1%}VlS0zbT<8>V^<8Kp6J1z=N;rf$sX$=9r^Fqa zUoxQWjdR<<>V8HAtf1~-+pQ_>*WY)1eS7@r%1#QP#|N~#+pjyd-V#Z0$(aEgJ1;Qk z(vF1z+t91}(~2iYE8k`s(l`(xO*}F-4IoTBwTSr{!6Eue2W8&NaUR#sdChtIJmzI5 zpUT3;={W&b)K~U54l!I;l;*CTB;3W31Q8o=cR$4(?-`9-Ef?*_pLbmg@=_SEDV;uB zUGw=W$Zd(@^P}@h@r4WS=r=a{Zk*;d&mJ>kyn6ZiS!7wmZO48}HU?={1|bbJG>RsV zx;n}?hhF6=Xgh0Zev?a_W$iW;u2P}-9~JuF=M!b(gaLrG-O)|~Kr1i>m}dsA;1CV?4Rt6C z3|7!klh;&(-B8z*mqn_nD+B*MgtE)u*gp7Qh8ap_{Cib6+SwhxC$)Fclb8rhCrqlD z{P-#EV6m`|e5wPqqyYi}2UKP()Dy#F&N>(%w;s|VLvGNWAu!O|{C9qQeC@q`1H362 Rfr6peWC5b0nubWg{{eYz!W#ep literal 0 HcmV?d00001 diff --git a/test/browser_tests/test_fail.tex b/test/browser_tests/test_fail.tex new file mode 100644 index 0000000..48e5045 --- /dev/null +++ b/test/browser_tests/test_fail.tex @@ -0,0 +1,9 @@ +\documentclass{article} +\begin{document} +\Huge +The quick brown fox jumps over the lazy dog + +The quick brown fox jumps over the lazy dog + +The quick brown fox jumps over the lazy dog +\end{document} diff --git a/test/browser_tests/test_fail/THIS_FOLDER_SHOULD_BE_EMPTY b/test/browser_tests/test_fail/THIS_FOLDER_SHOULD_BE_EMPTY new file mode 100644 index 0000000..e69de29 diff --git a/test/test.py b/test/test.py index 294e2f9..8fa0494 100755 --- a/test/test.py +++ b/test/test.py @@ -13,8 +13,8 @@ class Common(object): DATA_DIR = os.path.join(SRC_DIR, 'share') PDF2HTMLEX_PATH = os.path.join(SRC_DIR, 'pdf2htmlEX') - SAVE_TMP = os.environ.get('P2H_TEST_SAVE_TMP') - GENERATING_MODE = os.environ.get('P2H_TEST_GEN') + SAVE_TMP = bool(os.environ.get('P2H_TEST_SAVE_TMP')) + GENERATING_MODE = bool(os.environ.get('P2H_TEST_GEN')) CANONICAL_TEMPDIR = '/tmp/pdf2htmlEX_test' @@ -91,7 +91,7 @@ if __name__ == '__main__': all_modules.append(__import__('test_local_browser')) all_classes = ['test_output', 'test_local_browser'] - if os.environ.get('P2H_TEST_REMOTE'): + if bool(os.environ.get('P2H_TEST_REMOTE')): m = __import__('test_remote_browser') all_modules.append(m) all_classes += m.test_classnames diff --git a/test/test_output.py b/test/test_output.py index 741cd82..e7e30a3 100644 --- a/test/test_output.py +++ b/test/test_output.py @@ -7,10 +7,9 @@ import os from test import Common +@unittest.skipIf(Common.GENERATING_MODE, 'Skipping test_output in generating mode') class test_output(Common, unittest.TestCase): def run_test_case(self, input_file, expected_output_files, args=[]): - if self.GENERATING_MODE: - self.skipTest("Skipping test_output test cases in generating mode") args = list(args) args.insert(0, os.path.join(self.TEST_DIR, 'test_output', input_file)) self.assertItemsEqual(self.run_pdf2htmlEX(args)['output_files'], expected_output_files) diff --git a/test/test_remote_browser.py b/test/test_remote_browser.py index 9fcc266..b299608 100755 --- a/test/test_remote_browser.py +++ b/test/test_remote_browser.py @@ -99,7 +99,7 @@ class test_remote_browser_base(BrowserTests): branch = os.environ.get('TRAVIS_BRANCH', 'manual') pull_request = os.environ.get('TRAVIS_PULL_REQUEST') self.sauce.jobs.update_job(self.browser.session_id, - build_num=os.environ.get('TRAVIS_BUILD_NUMBER', 0), + build_num=os.environ.get('TRAVIS_BUILD_NUMBER', '0'), name='pdf2htmlEX', passed=passed, public='public restricted',