From eac083ff7eff8167672aa07b76bbfd95f768a53e Mon Sep 17 00:00:00 2001 From: Hugo LAMY Date: Tue, 8 Feb 2022 13:58:59 +0100 Subject: [PATCH] d01 ex04 tout change et ajouts de tests --- d01/ex04/Sed.cpp | 34 +++---- d01/ex04/ldksliejf.replace | 0 d01/ex04/sed | Bin 37016 -> 0 bytes d01/ex04/test_log/test1 | 1 - d01/ex04/test_log/test2 | 5 - d01/ex04/test_log/test3 | 1 - d01/ex04/test_log/test4 | 2 - d01/ex04/unitests/test.sh | 114 ++++++++++++++++++++++- d01/ex04/unitests/test_log/test1 | 1 - d01/ex04/unitests/test_log/test1.replace | 1 - d01/ex04/unitests/test_log/test2 | 5 - d01/ex04/unitests/test_log/test2.replace | 5 - d01/ex04/unitests/test_log/test3 | 1 - d01/ex04/unitests/test_log/test3.replace | 1 - d01/ex04/unitests/test_log/test4 | 2 - d01/ex04/unitests/test_log/test4.replace | 2 - d01/ex04/unitests/test_log/test5 | 1 - d01/ex04/unitests/test_log/test5.replace | 1 - 18 files changed, 130 insertions(+), 47 deletions(-) delete mode 100644 d01/ex04/ldksliejf.replace delete mode 100755 d01/ex04/sed delete mode 100644 d01/ex04/test_log/test1 delete mode 100644 d01/ex04/test_log/test2 delete mode 100644 d01/ex04/test_log/test3 delete mode 100644 d01/ex04/test_log/test4 delete mode 100644 d01/ex04/unitests/test_log/test1 delete mode 100644 d01/ex04/unitests/test_log/test1.replace delete mode 100644 d01/ex04/unitests/test_log/test2 delete mode 100644 d01/ex04/unitests/test_log/test2.replace delete mode 100644 d01/ex04/unitests/test_log/test3 delete mode 100644 d01/ex04/unitests/test_log/test3.replace delete mode 100644 d01/ex04/unitests/test_log/test4 delete mode 100644 d01/ex04/unitests/test_log/test4.replace delete mode 100644 d01/ex04/unitests/test_log/test5 delete mode 100644 d01/ex04/unitests/test_log/test5.replace diff --git a/d01/ex04/Sed.cpp b/d01/ex04/Sed.cpp index b65a350..74cc9f4 100644 --- a/d01/ex04/Sed.cpp +++ b/d01/ex04/Sed.cpp @@ -14,29 +14,31 @@ void Sed::replace() { std::ifstream file(this->_file.c_str()); std::ofstream new_file(this->_new_file.c_str()); - char str[this->_find.length() - 1]; int len = this->_find.length(); - char tmp; + std::string str; + char c_str[len + 1]; - while (file.get(str, 1 + 1, EOF)) + if (file.fail() || new_file.fail()) + return; + + file.get(c_str, len + 1, EOF); + str.assign(c_str); + while (!file.eof()) { - if (str[0] == this->_find[0]) + if (this->_find.compare(str) == 0) { - if (len == 1) - new_file << this->_replacement; - else - { - tmp = str[0]; - file.get(str, len, EOF); - if (this->_find.compare(1, len - 1, str) == 0) - new_file << this->_replacement; - else - new_file << tmp << str; - } + new_file << this->_replacement; + file.get(c_str, len + 1, EOF); + str.assign(c_str); + continue; } else - new_file << str; + new_file << str[0]; + str.erase(str.begin()); + str.push_back(file.get()); } + for (int i = 0; str[i + 1]; i++) + new_file << str[i]; } diff --git a/d01/ex04/ldksliejf.replace b/d01/ex04/ldksliejf.replace deleted file mode 100644 index e69de29..0000000 diff --git a/d01/ex04/sed b/d01/ex04/sed deleted file mode 100755 index fabdcbb8584e84a2eaee1cb1c3b4a860a95ba150..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 37016 zcmeHw34B!5+4q^bnaK>5o37xfqMabJginkXql6ul z4E*^xg;0hxHd$qYMu*}vfF!p`rEjwO5Tm${K#bsX0=0#NB$qgRDkyPBo{VY~E*U2| z8wFKdxO@~t+{bWa4ujCB`QrI`WxDYCWI&-$8KcoGM|HDzoMhiSRmy4fQ3c>ws|%y- zqUs>I14{0IlG7+ueQDJ7NoweCmrCDd^&v)aAAy*`=L8Zj9dqA{)>C-4mtuszB)p1a zLTJ=-XF`tb{HBMl_IWD5f$F79*{@NzdudB^?WBpNE%oDCnnNAk);#j)%hhG^u+*OGp1X3`s}-bO3t& z0Qx7Rpy~ANA0Xdq42pF8e;t7Tt^x9WZ~!~!qXyII|LFjB-Y`JEBL|?rK7c)o2e4=9 z0QUTF0DGvXq_cnI0Q?^eKrb7hp8E!{^OXVYTr_|l>f2uYr5^49^xvZNuX6d4L@t2+ zgT*l6tB`a#0)%*3>Df3qng3=*KafHf7_X6NeciFg(ioj20)fWXa3~Oo*0e_h0TDQR zezYZ0JwIArUe{F99*DNrG)E)VbyZdKK$}oo6KSpsgd@@RU`=av-GV^X{Nn?4kUIUe z`O(RNKwWotd3pJG$p)_GP-Asne`WJ)NaLiIV5l+LRMq(%<(s>!TG`+eqrvvp=1@&E z$g1WyPiPEAtLE0VkY!w+0c}WAss(`sWhmF=z`WB=AFxpKCk9aR1?7RNDzcsnG^1P= zWk8_;t(Yz)=SL?7L-j4`YAjv#D?=wytHILpiL%<88+7yZulOqDH1{;JV?v-h90{D! z77Vq9>w{9mw{F0iHpthL#_y&;S~Kso`4dzbPH2WvC`NE%b*MQSuh4Kyq-yTWdGo{b z1E_BFvYJ3`u(3H5sH=(AHBle#?hdpC+auvnO-plhd7!f_-YTkYze@)_z7FG}T{r4C zs^7TD-+DB_PE^Fi?=}Qg3w(z`IJqv|+E&vZtZHqIH)C=u=nDMy-C9)!x^-Q+BbwYx z!~d+8CTdYv`aflt-6(CRMva`PhD8|DSeg-0*EzQnO^j)=RnCYAHP)f!DON553qxJa zq58nQV5FlpNNja_;-qefIj6fBMGH`Znnhb{nnU8$>C*!fO3K8kv#Tqo2ga9-FF9U@ z7cT~VV#)Y&F@5pkipuIhdC3HG3TAyP{ux+3(LXCz$8?teD5U9ypJqz$C~9`nO1v$eZa_m~S$@IiKZfEAaiNm=?SCyp$Pm3M z9vyofmb_MRqmn-`%}3ernyrXK^7OfhKHNmt*EJHSHJv^@J|71&aVC58;Wg1^iDk+d z6CF#C_)%t}<5C(wPB77x>73>>(P^Ej55I|SUT4oW(aBbQEH=^gJprXHHPKP=@uSH^ z9~7qw(PpBfA>&84iJl#&3bD#WSGQ1{y4FO`HSw=E(bcUQr`}|uQ(w}@MiYIoCIUB^ z=;rm=78AX|#Q&IyPWKA>*kPg%(L~@L6Md+OzSl&jHK{&cGtu3e2;6U?drb70i9XCk zKVYKkdtgfb+(h@9`2W@5-}4SX=wJPT!{2M`D;2`OW=GU|Xs>_uF2_z*edzeNK|XZk zyEx~K^dUs?CQ9que+b8suTz|cOy6FPzeI5>#dmQ0d5Y5z>D$8bpHrNMM&Cw`KS6OC z5`F7A{t(5f%lEC~_)jTLUA?c3<9AVe_vCIes0*sZ00yIDRF?sVn!D zar{z>Qy1>@a(o5Fsq6N+INnZi>au-;trVxO)#pWgp}*%n|I=qy`alpO)`}AP zpVo_c|8||=f5M?|2x2QBwPa`B$jexQ~KA@$9x^l@tJuoQhd!KCk)f2xoA zXZc^Mdwz4CzvpfL>UR&!T~NJyhwCt(@b7+R;|PM?OAFC2ha3Tq$;a!7e`iC9HgEl7 zF4*m#O6O?7V`LO{ap%)SIJCcE{mzC2GxhK7%zw#;3_S<@&wMz||IFux-}0>gH(y5w z$2DXs4XN^!|Ej5sz(h7*HOg5eI$Df5`_ss9-%SKlk^}!QTZK&S$#(z11H7x^0W833|5CV2Fhv z?TL*bp)*J^nD_d7=IrRHdaBRM z1X-ev9X)fNV#)PdQs=TK_6Ct?F!_5|9*Et6JeA?SRbOIKT#Ab6UAZIHiCoYoF`6b4 zg{A&8H+JwKYU4ee664{L4-T*avhe<%g)tbmADU1Z+uEpVd;a0?S=U7M_#`aw_pW2= z>Sw$lcN0VJoCA_Qm$K>c`K89Zy*wMY>FMOHEyqvt+FY0KXLXv19g6IsV=aU!Z3$>!Z4Iw z*XX9$v8LF@*h<7uI%U*SXendKIjE6!C&+AX(!JHoMs1TETRFA&2JXj~o0Q%Z8)H`5 zw+fm(Qt5sKy;A9VC>?`f>;-1tCONipYVQr4Qf^YZKK9#xz|u>0QNz(_kez97Pt}WD zxm%Ii_aHZFA|<(-?d_REyqjWUi5IMTw5{A2>m<^-DdJ$hDRwTU9LFiDyDB~FV--k3 z9aDA0Uimypr>gmop=dtWNGji^6Lp<;+_qzurjPry*r6DZFwt3U9{$%Q)X%KiS; ze_a)uujSE=LD{`DRzVb66EQ{29~}pJ=6t}(M^N%8oxFOtFXkc&UFmf79_Xq1pl=Ka zWSuHPtKY}$ z@s@w=-$2~RTrc{2*6ihEv|M9c>n4!Ym|jESo;5ELQ}0%mQl+BB-Q(y(hhpc&i*i#! za2tjFy_x=AU(9dW9UB|hzCOXUhQj{UpNqW9w#bVT*H7;n$|!HU=vi|aGwfbkzN6>a zSTLT^TCJm3a`dhvO5S$oiF@+aOoyt~+sI@~-WncXy<1uD>JKq>a^=RJ|3r5c@@=Xv zwJrvko;B~1@-vyNE`Lm4M|3TJ3{2@8!!~oRTxnms<^@WxyMgOUR+6lrQ*>UK^SB1% z-C$`i*DN(v-QMlcCSrGj8S~7#Rb&JRqIV4isgBkZBZ^i?Ez8#*>#|G(L*DkSY=|mo z1@y^&)~z+_hQx&fq}Z?H;*^~nKXenS*_5J9$!s6;m0EVL9!znvS_|Sul@$F<>N z2TOL!{-mf+fhseiEYY>8f@4Rqsk>v_F;tSTr?ft*IBWL0siRN@6^p8S_Ejvb?)ju* zK}FA(3;pZHjRtxC?6F_bJxr{WvV7(%BRaDDcX=aMQ4X_vKAPS0;f$U?Rvaq)gMal- zi~qzoI{rlWH|H#=IJaU+#d#G0^BRuVkB}qe`=a=r5NZ4V_`U}Ich!IezO?1x4sUBm zB1oD3vdCh&DR5W0e=tFJ|4@8dBW1|vJB78 zbgYLw*){@yn_v%agppyUi)dx|+XWgqBIp>6zZn!jIrc+NNibvagvX+@b}n(Lx)ZvLPf6Ya_jUQdjuIGO6gbOZw$)E`RVlYWjf`(8Gn0FUiP;k zon&_4?{4VSG}bvYp%cl%vSRLRE?uTUkL3(qMzWp$-bH!nd1{7llrL_Vbv~3-WZRMP z7^Ka{-?^~uZQ@&M=6f;Dha@h?0@Q=|pOiC-bl(6rlRebF2dJIVJ{gyp@-m*W=*)<3 zKmOLDo$30VvCG6~eOj||`5Z`Z!_~MJH>4S2bfSz#iJ=*1Kvy>Mdkkw^>Z4+2uIn0W zb*|@Xqbk?CE~6@U%vH7-xn-Bz{kbQs&O9~O7s@@MBDbs}cT8ojw=&mLnd_>|b#T8~ z06qJmNB0p@cgQ%*GDMsx#EG`W;uN?bmSwNASi0a^hH;!;Z1I%mE*CShuC$0H&gJ6A z7U%00%SKD3W`T~WmI-1RWNptH;&F>}zae&8%Km1EFFE{*)pkdQ_^DxgJVShK++o>b zv)pcjM@QyBHk@cF@z^GcV{AcDZCh)#oMT&O5vwh>T^4bVg$Vas#tZR=#e?7{7LzFF zJzl_;%H#GL;-Wp)KN{kok^Q>ea%aY?7DTSKXCvWuJA@vy6MdIGUN|n{_owe`;QJc* zz6QRpf$wYJ`x^MZ2EMO>|Ccqes=&wD`|>5OS2$PE^_npiJ!(;_>GVzq9Xd|$aL|!0 z0XI@U4(Vt99z2nwLqE&b?>S@H$cIOven%rV)yEXN*P(;%mFW27>qB8ehv6fT?`#7X z+kF(}_dE!FDqX+3aF?==@0XCS^D{rwCpp|I$iwGj#FCy5x+kGS-#6-aEA+E`M~;uv zHGN06jBC67oGOGx(Rni;|dCSL_fN9)>B$1MdVh%c12IoU}trX5xul3-bG3l_LgQ#&YPID+Q%W0fh z=|f0}JMothz{!?z8_pJMyVc%=z-B16UTn2rg79_l1gCx7R16%a{Te^R`m-6Xy@cVqhZ%nKJj3+|7;eaf-A?!dzvBmIzz)>7#hE3XmaHdXY&yZ=TBf*R>jb=jG^@khS2Q{ z;jIj9FEU*44nw;W4l?JE$Y_S>6o!t)44umvx_TM9f5x!SaGu*!k= zgPcPy8Od;IIm7Dd43{lnSaUwZ<=qTd^fIj7z|iwF!k3Go!E+gdvlND)J6O(ry|0OC&oovq|hP2xb<#KPJiu z3w1^hWhLAPiL%eilopVM>jIp!=?&6Bm}{N3Vf6bp_h6hHf4AOFg7?vhq&*KHBwVz5 z$n$`~mQh3uMWn~=C5d;XV&d?ycK6XlK4@j}w}{L-irz=i^=F)h6R*33xTZ=jl2gWZ z5qX9rlbnY%j1cafL~rd+|AGqls;O{?kr&+Y22Fsffi(OOVk>u?%QHC^;$iqciUeHy75Bh_%#r082yJRBQzoOI2 zO%AKU{UFg9+?_;Tlv1;v8*p(Eu3KM$nP+DC&%Vm~s`eBdb{uJv~+MASio+*v3bpMga_x2?xI#M{*1V461|=(OB8=i)bqJLso#3&B#LcV1UpuzQgeuUR;q?VqCUy( zlF;C$M>CE}gUQJa=gGtcRTO38>>7;I@S!*jI}-fGV@T-DxGGUxN`zo?j@+X}@nlMB zO*T;_O{1i9(@D8crKGb=RkZ<`oBQZb$Sf*H@tMT>blezOGj94hnPa)-6%yk<_j`my z-iIJ(IEvmPY0B6gAij$%U#0Lh5MM?yJ*aa0cZ!9q$sM7j&6bm~UPxph=Zrin&A|@$ z3SxQCLgPA>rT9`xyCPBTY$HX5`$|gk%CS3@n%TXcC{{^{x1Fp+_f3>$$MXeb!VPHB zw2{)XWEwNDu*~H?O3O2)ac7ii-PGAmOY~n%cX%)%98oi=n0`U%xI3Yj6o_KFFLOMX zpi-8icn47*NKhs39-_XSpi16f6ZNYEHDQ?bRU|p>U&tj_hFWsjc**4)@?Y}mxkX+* zACy_gkcTmF3S^swG-Pf zu#~4`Ddb7pdMx0GtdpifKn$CPNO2WTIV)&{%S#wdtzy&}L|wTInq0I@EIu3Y+!h`v zbP~n%lq^?{97#Bz2q6U?N;fgf zn~89riLjXDCK9)YyHK&6IBuoFNdhmSY#6D9nc2@{ZQX%%_k!$K5WEnQF-o}GAGtc zWK2^(CvKe>eD59lA@yo>ZWwHexsi2O` zxT3!qzbBE+iMsOeWr7S6?zbszzbP$@oP{fj^Kh<>KM})&Ru+-9cz`HZNjo>Ev-3d^ zU60~)r29VNec#juhkZtr518U66WkTDrm4Ec=tD%wG-L;I&!Pg&meQ(9cM`*(epPBG zPFI2~+|LnXx1`AanM*u!pi06JB3#c6Lj;-WXj;U%A65O)T~D!fW)nu!jfcC;!j4tHjvP0+VB8B$HgMOHOTaTJ?Hp4!lKcZAFG;aVEhgJ3t=5#r9Z{KGONm?3 z=XE}%J=QNTx~XzEq|>J|{2?(sWs*zSf0W4gp_+v_0e_Z7tHF8n`T`$OL@E9(i*5$# zb^Lkk)SP1|!A(tSrg0|g~W8Mjg=IV5;0Eu&T(0X6us`@qJ}HUptbeJB4>UW zNOlzs5&7K+&xCWYXs95zy{zW?MS(<;D4i8&ZN;-;iERNG4&*Eou*V=l12LvdcEkJInOIh{lC zMdYF#if>Zb>`;6U1d~INqgY1W0V=r?GR_!8u7s>nIEm~`A5A~mnd_FI7PB+2p&xo> zXRcqtaP6H8*Zr2^M}K0t-UY$z%o~noxN#c8kI!PbshQ#C4u)HvVz~7UhTHzZaQkS? zvDuj$PG;CRhvBaC8Gdpp!`(MC-1BFK`{*^T?99z$7#^6xu;mK%$=hdc1>gW zMJ>a#7cuOW!R7Y;GJI2>IyJM)(%48N*i`1M%~ds`WPvzp2uq?>X(#z0#FGFY>L--YjwhtICFmQRz z9@;*ZAu@v@dM-mpH$&&m3|;p#bic~5ypQ2Rax7*Ky(kk-!0e$H4`Em}hT)QF440nC zu)2=nvM9rvD;X}oiQ$U-8P;xR==lS~m7g*6=8=PN=(-|?YmQ}DU&(Ooc?{QeFg$)O z!xIlMJo!AsQ*SYBvtmYd(t>ORM%(bavOdHpbv}#ue2V`^){y|=d=-Q!0%;wN&QFl~ z4pQwHWSAq~LeNGIN1JpwlCVuV91lafjUA3Q>2RDv1m$p?PGOqiwZriY5QfkfRZ<;} zP7?bII33dA=p138Zt0<{q{Gp<&&rgmKo+iRadzH@6FD3QnH-MJzgxGF;B#~$Y0s|^ z60V=)tR0TTP(*sz;plua>`h8 zI67xYGUe?d4a(u@Z0%1chokdVQ{mX*=zN1I>~M5Wu+VkN^AkF8=plqqew@kSm=$+8 z(#6a5pEwPtnlAboMR_?&4oBx0sfMd2MHf39oue&W2 zb~rj0rPQovD|K|&6F8e4j?~Yj!;wN6>~Q=Oc%;LTLfYZzyd$kfb~rlg(pfIEWQU{k z{uJv~8aW)D=b6&jN_IFp@9jq>hof_xtoW;O+4FE8<;E}i5#latWp+3^YZASlDoZ*X zo#%6VQor@kNje;zt5d1uaCDxPs(~Di&L_ED5*pay=&UrDoZN7pqj7~5MfAkaRgTl} zNjN1Oj?OpZs-(lw8BETRdz5rII$M)XR7vD;be@||iXD#5vrJV*PZiC5bSIfb>9Gy`!i5-s4yAygzfpj=JpG#0F zOX+ZQK9HbFUUE1(UrtaZFF72YUnQss!`R`No%w}ad}XM`myH)+*+c(JUPrgc>*#~> zI{J{jjy_D+QR#4WuCiodg_UTLB!{E(aZ5>3s%lb`!_m3Ja%MUfv%@j_r1>a?$>Es0 zf<`zi^U%~P9gevxd!fli3r2Q0=C$xZp_6nt=E;#G3FL6h3z;~`;g}aT5y;_~cY%pO z4#&JU6M-C#dF>_wIUMsMCIUGe^P(mKIUMskOayW`=5?9~hsp;G~D% zv!pJEW9U9l@7v0~= zwLyzC&x2MLk+nz;N6%H#&KJ|!`5O>j`*4yDN6-7FHeiRN=L4p&!_iYAYnrNCIvhQ4 zIP#>#4oA;yDXprM9FCqr{i>84jviNnEFF%XZb@Nn#pH1G$bl*e%wz~sK8L^0OvzGI3QPPw|u zk$TM1AwGohn<`vpEsK5!(lFy;h<74%EWDF_2>%i;zT>Rdwk=0^m_eB#)^xEswscKA zCXVrXq)z(XoMlldq=#iai}W9*=oI71hDpv^TzD*t77}O9ohe);##%$p8;HKp)kdrZbVpD&5#@XV+x7%6SauxZ1_!vKd(R2NJ{ ziqj!Tp9i%th=Vo?W}OHH zBr;BC9^%YPOf8QBmg=(UhAu0yXtOlw-`&H^ooGG5os^2Z4Q-|l+bt1OYvRMQheY%FlnOt z+IeHBqqMw?lH>oILv<}3^}+sp_~bJ2*5Z50;$Knxe^-w*Wk93J+S2IqwxF_EF-j?_ zl9rav)^X+IxqA4G`%?L)eQ6TscdSEI)cRm;N8>jzRFnu&6AicG6V+Ye_WF`0YDE1- zVZ?B$LyW&&O}{q@1X^qH-Ro#D5Je)ck15f*F8TyEapDWGQO(3e@Z%~L2+XXWT_t5B z(faye1H!m!vb_l6DqPnRuB&MYk`ft`l66$2D#&4C;A#dD>xnKigN(2pOdh9A0As>{ zI#|#gCayrBp$(r=R)u1+%!)otTT<87hTbjYHzOLlsFqMK^MeQ=g`8O#9(YgngWa-Qu9bTK&{+>;&u?-sZ zzHPAmQk!R%4OIJ6Hp@o45pv8j@*9khwbWwd!_{j4*ybGMINN5o&oa($uoc=3_oa5D z*|FI+$Z*dxn%}h~b_Oor4PMgsSvGw4! z+F;tPXsrw}7?tz=An!jj{cj%RDgFHayD?7#TMc>B7{@e-p-+>A$QXvvuJ6iBqkUNa z(XL2pw3D2^Tk_cKgREt_wu~ojS@zAgjE@|mUkmEXAv3-`!<(Og{i6V`~{MClA%Wy$K+Xl>p#^9)J z7|3Cek1z)Bvst6IA$IH70#ws1OoUTxP9r~Rgc@wQc4LSmYB!cKZAcV>J;soz%{t3i z)?mxToVd^Cwy(Dhz7!MT6vMs8mOI6kSz^n!H`yHasL|MfWTPkwMVoE54MxLas;{vq z`B`8e+W^>uMlcSG+MM+Y zfbL#eUshfk?8X`pm%sQDKm_Io+Jg=F7<~wzY_CYH6euCGJX9B~4|Fw0oA4cXx|G(2 z!!6<>+K2$3uAd*BeL^769B$@lKY1LSZb)ngs6>%yXr&(cB%jbs?XrH1Q_XxF3Axr19%S((a_dGTnrJ>(1mY72^OUF zNo#F8HqsE0<`r1TP>dC0EyJb)nGg}Ig9JK4GSkk6t~Tt@5p58SZGmt@LnIhQ7CIEh zFDDyX!d-!y_D1{#YeajnF%YTg49ZvlWye?VBUl*KGz#d7)YXI|K146SVp;g%N0w&e_wwh&=Mw7E4XqOBCBq5?unFjOZcLv>Pw6;s7Ulx#Fy zPqApYL7+4;w`h2oq;Y1^a0g>|Lp$XV4a2b3U@I#oB*nm1R0s#CnxL_+shyy$ww;x= zt2nMVQXI+Hmm<_bd!ne^>ahmIPg3i{9ko~zvQ;QA)A)q8kkpPOaz`lA+!zYhdnsM& zlq=#uKw?W>IMgX%ms)H}U}AHmrX|$TDhS(}YJhd2XnPB=zPS+{yE)R>UeneDL{kUb zf!rksJ3@7o9%-YGh&4w#u-6BrcT2%&SPG!_I00iL6rC_0JrGscUK7IllR{YLBG4S^ z(qjwE$oV$s7w(U5!zbC6*yHb zl2M^@wTz{D5Z%1JT{K|P9tnzuAoUp#!XP!YbVQnXSjsVr1vbZU4r31#9-4B1f`Y+P zPiL7D2?m!58eA+B4Wexuy4stgJcRiU0~Je|V1RP8J;;5nJs85L-Z1KD{|Rc{+KvW- zPQqww8-4tZ5L|Ld*I^W@0o|!lHYbKHv~QG-2#P-`L( z3U&p!4sk{We5k>uY+#p3{hbkWqJgiFcwOoE@g!MQe=>ir(BCIXro#*FO{d2t^gf8m z{DZ}7Y5DVoZ&W%x1wwxZC0S3Q(BD5vrVkP6zQY7I(lMX zw`4u~t1MnGC{=*JgH817`%gG{}dx>r=3K)Ax0)5rjQ}LrkD)UGo%dhw?nB3 z@Vw#ZU;pHCCHm5ob~zGMtH=?0_@jsMF%@SEzFu=?rH|uMulznH@#}s?KVYDPzpI(X zo?1@L7nh~v8&&jODRgb880}*YeYzY0%Gdm?jMB87^D2E5CC?)tvvDSVJuPWFZwEbH zy=_wb`%}itPZix&;6o^JY(tRsr_g^3I@R0UN*_WAd;Y-T{{7qzgGrD6P7w>?ln=T^ z^dBz+*B>6|{FqGojq7==r~kO4mrU`buHQIqQS{VteKG6lKOS!Y z-G#3axl+dCZJ^@~>3+v+1JF0Z-|MBX8l~v@1pI?VVjfdhNIVfuum6Yv=oc_ON0@(T zL&jY^0RJx)zrIYqtxEEe;$M|AKNrCVG}!79juiXp`x5Eu;R2@T2z?o)=j3$!2b|IQ z*8cPPWyEjI5qnjCR%-%r+W`6>8-V`O0Q9?2|M}>*8@h#dCzH;_Uq0OA!sVlA{0M`e>OZv~(mNFC^lw-C^|FQDDWKzd z(vxO?Q2Lp8Iz5xP-lVMgdrnB=B&`E!4{j6jD9FbZN^c$jddbTTm+M0-tAfJW!)d2kT>m$-bA8iF6|fSw#Yu}N26dcE4Kbee&F2$hci zDn-{@OvPnrBg0^KU9gQDJ@8wM=dBIRl!>W#JMkO1{%$ku)0ujYnVLa)zYHd%W}t7U z;75u?JFrt!9iF+tJq2%65PR0P25<)-!XryKNWwb5dfW>}0yQ1of_A)Y!8g?Fu{~p2 z4!R+1hL@|oW_bX2gYC<4Gml&GKz&DR>vD*gVtkvN#0n4IyoxzhfvVGIu;UM#S_i89 zis+v)PXuQC;Pi?))zhJf?y=*-xZyMtct_rN!OxgEbAA;ze66UQU4=W%V0}%rhHf~q zq2)K(_LVl&^!a!%O1b|eWU(`5V&B}9M7Sf#2O0`=MCe91b;nho&$M?XtoRQ5j_SQt zlQO1VF_ZlST*Pm?FRk86wV!V3Z9vJt+djKV`cNzNk#L}?20QkC$Nh8rwTdi1dmU&` z)3{@yz6IV1_GbiXkI^U|aJMzfOcQ$@r&^cTo>Zl%T}b~8TOuc!A`A8Hx0S|rv`Kon zyPJ0c?w?BAO82YOuk{#=@?ztN7!sfzk)rZqjw}Xl(}$p z!PcEU#U=XB438Zg=}u}O#Uh$h(HCQ3r#Xs`s&rb=o%np^6}HPXH_mQioh7NgXj*56UnG8p0?Fy-pUWsjY1f zcIsFQ9vtg1J;GB=xaR60o@q5=N%^lH6o!Wjy7Ap{-I@R*p z@4iFH`xT?kU(4(AU#8?M6`%IcJKzeXL;GV$9$v3_{#yQO(5O$T>Pq+{Tp;2|^(>RE z=A#D@v%J^k<7BUr-=ET96&d&N^0*#gmKXUxnV@b;hiHd`q{ih`RNR7qSzbRs@Ej&N zR5fUJuIqRNfsObhd0qeU=L}vDamh@W-- z8s9_;yqa-&{k$Zm $TESTNAME - ../sed $TESTNAME "$FIND" "$REPLACEMENT" + ../$EXECUTABLE $TESTNAME "$FIND" "$REPLACEMENT" OUTPUT=$( cat $TESTNAME.replace ) if [ "$OUTPUT" == "$RESULT" ] then @@ -96,3 +96,113 @@ EOF ) run_tests +# TEST 6 ######################################## +TESTNAME="test6" +FIND="toutouille" +REPLACEMENT="||||||||||" +CONTENT=$(cat << EOF +trouve ce mot toutouille +et celui-la toutoutouille +EOF +) +RESULT=$(cat << EOF +trouve ce mot |||||||||| +et celui-la tou|||||||||| +EOF +) +run_tests + +# TEST 7 ######################################## +TESTNAME="test7" +FIND="n't" +REPLACEMENT="000" +CONTENT=$(cat << EOF +No more tears, my heart is dry +I don't laugh and I don't cry +I don't think about you all the time +But when I do - I wonder why + +You have to go out of my door +And leave just like you did before +I know I said that I was sure +But rich men can't imagine poor. + +One day baby, we'll be old +Oh baby, we'll be old +And think of all the stories that we could have told + +Little me and little you +Kept doing all the things they do +They never really think it through +Like I can never think you're true + +Here I go again - the blame +The guilt, the pain, the hurt, the shame +The founding fathers of our plane +That's stuck in heavy clouds of rain. + +One day baby, we'll be old +Oh baby, we'll be old +And think of all the stories that we could have told +EOF +) +RESULT=$(cat << EOF +No more tears, my heart is dry +I do000 laugh and I do000 cry +I do000 think about you all the time +But when I do - I wonder why + +You have to go out of my door +And leave just like you did before +I know I said that I was sure +But rich men ca000 imagine poor. + +One day baby, we'll be old +Oh baby, we'll be old +And think of all the stories that we could have told + +Little me and little you +Kept doing all the things they do +They never really think it through +Like I can never think you're true + +Here I go again - the blame +The guilt, the pain, the hurt, the shame +The founding fathers of our plane +That's stuck in heavy clouds of rain. + +One day baby, we'll be old +Oh baby, we'll be old +And think of all the stories that we could have told +EOF +) +run_tests + +# TEST 8 ######################################## +TESTNAME="test8" +FIND=$(cat << EOF +ry +I don't +EOF +) +REPLACEMENT=$(cat << EOF +oo +oooooooo +EOF +) +CONTENT=$(cat << EOF +No more tears, my heart is dry +I don't laugh and I don't cry +I don't think about you all the time +But when I do - I wonder why +EOF +) +RESULT=$(cat << EOF +No more tears, my heart is doo +oooooooolaugh and I don't coo +oooooooothink about you all the time +But when I do - I wonder why +EOF +) +run_tests + diff --git a/d01/ex04/unitests/test_log/test1 b/d01/ex04/unitests/test_log/test1 deleted file mode 100644 index 8d1c8b6..0000000 --- a/d01/ex04/unitests/test_log/test1 +++ /dev/null @@ -1 +0,0 @@ - diff --git a/d01/ex04/unitests/test_log/test1.replace b/d01/ex04/unitests/test_log/test1.replace deleted file mode 100644 index ce01362..0000000 --- a/d01/ex04/unitests/test_log/test1.replace +++ /dev/null @@ -1 +0,0 @@ -hello diff --git a/d01/ex04/unitests/test_log/test2 b/d01/ex04/unitests/test_log/test2 deleted file mode 100644 index 23b0c96..0000000 --- a/d01/ex04/unitests/test_log/test2 +++ /dev/null @@ -1,5 +0,0 @@ -ce fichier -contient -plusieurs lignes -les unes au dessus des autres -youhouuu ioieux diff --git a/d01/ex04/unitests/test_log/test2.replace b/d01/ex04/unitests/test_log/test2.replace deleted file mode 100644 index a573c23..0000000 --- a/d01/ex04/unitests/test_log/test2.replace +++ /dev/null @@ -1,5 +0,0 @@ -ce fich++r -cont++nt -plus++urs lignes -les unes au dessus des autres -youhouuu io++ux diff --git a/d01/ex04/unitests/test_log/test3 b/d01/ex04/unitests/test_log/test3 deleted file mode 100644 index 922f88c..0000000 --- a/d01/ex04/unitests/test_log/test3 +++ /dev/null @@ -1 +0,0 @@ -....................................................; diff --git a/d01/ex04/unitests/test_log/test3.replace b/d01/ex04/unitests/test_log/test3.replace deleted file mode 100644 index d3b95af..0000000 --- a/d01/ex04/unitests/test_log/test3.replace +++ /dev/null @@ -1 +0,0 @@ -++++++++++++++++++++++++++++++++++++++++++++++++++++; diff --git a/d01/ex04/unitests/test_log/test4 b/d01/ex04/unitests/test_log/test4 deleted file mode 100644 index 0880dee..0000000 --- a/d01/ex04/unitests/test_log/test4 +++ /dev/null @@ -1,2 +0,0 @@ -...................................................; -. . . . . . . . . . . . . . . . . . . . . . . . . .; diff --git a/d01/ex04/unitests/test_log/test4.replace b/d01/ex04/unitests/test_log/test4.replace deleted file mode 100644 index 80f497e..0000000 --- a/d01/ex04/unitests/test_log/test4.replace +++ /dev/null @@ -1,2 +0,0 @@ -++++++++++++++++++++++++++++++++++++++++++++++++++.; -. . . . . . . . . . . . . . . . . . . . . . . . . .; diff --git a/d01/ex04/unitests/test_log/test5 b/d01/ex04/unitests/test_log/test5 deleted file mode 100644 index 671f5ed..0000000 --- a/d01/ex04/unitests/test_log/test5 +++ /dev/null @@ -1 +0,0 @@ -test de mmdr foubar diff --git a/d01/ex04/unitests/test_log/test5.replace b/d01/ex04/unitests/test_log/test5.replace deleted file mode 100644 index 671f5ed..0000000 --- a/d01/ex04/unitests/test_log/test5.replace +++ /dev/null @@ -1 +0,0 @@ -test de mmdr foubar