From f091b6c53adae22e88ed078e406efc74615cde9b Mon Sep 17 00:00:00 2001 From: gbrochar Date: Mon, 11 Mar 2024 16:04:14 +0100 Subject: [PATCH] test(bonus) --- Makefile | 3 +++ ft_strcmp.s | 19 +++++++++---------- main.c | 28 ---------------------------- main_bonus.c | 41 +++++++++++++++++++++++++++++++++++++++++ test_bonus | Bin 0 -> 18304 bytes 5 files changed, 53 insertions(+), 38 deletions(-) delete mode 100644 main.c create mode 100644 main_bonus.c create mode 100755 test_bonus diff --git a/Makefile b/Makefile index 5f2b39d..e9b64ce 100644 --- a/Makefile +++ b/Makefile @@ -28,6 +28,9 @@ all: $(NAME) bonus: $(OBJ) $(OBJBONUS) ar rcs libasm.a $(OBJ) $(OBJBONUS) +test_bonus: bonus + gcc -Wall -Werror -Wextra -pie main_bonus.c -L . -lasm -o test_bonus + $(NAME): $(OBJ) ar rcs libasm.a $(OBJ) diff --git a/ft_strcmp.s b/ft_strcmp.s index 6c8ff62..56aab75 100644 --- a/ft_strcmp.s +++ b/ft_strcmp.s @@ -1,20 +1,19 @@ global ft_strcmp ft_strcmp: - xor rdx, rdx + xor rcx, rcx xor rax, rax + xor rdx, rdx .loop: - mov al, [rsi + rdx] - cmp byte [rdi + rdx], al + mov al, [rsi + rcx] + cmp byte [rdi + rcx], al jne .done - cmp byte [rdi + rdx], 0 + cmp byte [rdi + rcx], 0 je .done - inc rdx + inc rcx jmp .loop .done: - xor rax, rax - xor rbx, rbx - mov al, byte [rdi + rdx] - mov bl, byte [rsi + rdx] - sub rax, rbx + mov al, byte [rdi + rcx] + mov dl, byte [rsi + rcx] + sub rax, rdx ret diff --git a/main.c b/main.c deleted file mode 100644 index 758a375..0000000 --- a/main.c +++ /dev/null @@ -1,28 +0,0 @@ -#include -#include -#include -#include "libasm.h" - -void do_nothing(void *data) { - (void)data; -} - -int ft_strcmp(const char *s1, const char *s2) { - printf("s1: %ss2: %s", s1, s2); - while (*s1 && *s2 && *s1 == *s2) { - s1++; - s2++; - } - return *s1 - *s2; -} - -int main(void) { - t_list *l = NULL; - ft_list_push_front(&l, "Salut\n"); - ft_list_print(l); - int test = ft_atoi_base("700chmod", "01234567"); - printf("%d\n", test); - - return 0; -} - diff --git a/main_bonus.c b/main_bonus.c new file mode 100644 index 0000000..9830540 --- /dev/null +++ b/main_bonus.c @@ -0,0 +1,41 @@ +#include +#include +#include "libasm.h" + +void test_ft_list(void) { + t_list *list = NULL; + + assert(ft_list_size(list) == 0); + ft_list_push_front(&list, ft_strdup("abc")); + ft_list_push_front(&list, ft_strdup("cdb")); + ft_list_push_front(&list, ft_strdup("abc")); + ft_list_push_front(&list, ft_strdup("egh")); + ft_list_push_front(&list, ft_strdup("egb")); + ft_list_push_front(&list, ft_strdup("abc")); + assert(ft_list_size(list) == 6); + ft_list_push_front(&list, ft_strdup("dgb")); + ft_list_push_front(&list, ft_strdup("zzz")); + assert(ft_list_size(list) == 8); + ft_list_remove_if(&list, (void *)"abc", &ft_strcmp, &free); + assert(ft_list_size(list) == 5); + assert(ft_strcmp(list->data, "zzz") == 0); + ft_list_sort(&list, &ft_strcmp); + assert(ft_strcmp(list->data, "cdb") == 0); +} + +void test_ft_atoi_base(void) { + assert(ft_atoi_base("01", "01") == 1); + assert(ft_atoi_base("123chmod", "0123456789") == 123); + assert(ft_atoi_base("123", "0123456789") == 123); + assert(ft_atoi_base("+++++123", "0123456789") == 123); + assert(ft_atoi_base("+++++----123", "0123456789") == 123); + assert(ft_atoi_base("+-++++----123", "0123456789") == -123); + assert(ft_atoi_base("poneyvif", "poneyvif") == 342391); +} + +int main(void) { + test_ft_list(); + test_ft_atoi_base(); + return 0; +} + diff --git a/test_bonus b/test_bonus new file mode 100755 index 0000000000000000000000000000000000000000..a49c2819ca4b2f5a43a8f4018ea452f78e177d3f GIT binary patch literal 18304 zcmeHPe{fXSb-pWpt$)A@3^o{y))+hxtVIHZAx1_E61;UJOh7<9F+8udD{1T1uCn_U z1SVLHaP4KIM9!GBlcr-*H?7^YQ<}OSj7frx2W&Sq*l`J+(v&7)Dny85*x9*^KMM%*i?)lsUD8dlg9A!@{O zF%jRh#cg6d^kea1wOgJoff9wKS2e{LNa9VWN&z`b!Ga}6NRoJ?l>rI}g{9ErAl^7q z=(by4)Pb>Nz1^Rm$S8jKZOa#Q{4AY33guwAvOicoTz2TZbZW^wY7*~|<{i>JmID+J z3QNu><%B-Vbv$nAhmMM0ehcB|eL?fwvR2!(q&}!@x?n~AH~nqUyuX~I{J7;x1q+tk z-{--bpmo2G;LW^I_cz*hcu41;rB1I{6puA6Te>J7DUZhzna=Xg<;%*KEe)iTfyJ_W zii`T7Ikj&6W>L~5juFOus!zp-(n|V)-K$E!kv_8J`ww>>xKcLn+aeU}VjsjI8!BYa zQ-a!5r)@mc8X{!9B41K->u!2)0NfK4fYcLMVlz$x#A>~9$be;T+S zA9tbL6!P;daKGCaZ4W+rN(|H9jaDH)!Ze#Z!)8k?5st@pM@4%$9#1v{4X4x5lx4Pr zV{x>w6`Rep6$a8CjwM7(DjEe0r1@d9x$R+PM^?0Hmx*=tq19{5#et=EZOKq|aiB_= zp~eO?5=}*0V`(dzYHU~&PbQ*`;ifqGZEa5`ba$pQEog`_jlqb=V(WVJhqt*0ng-~3 z{!Wd>Ceoh0Rbwwa^-WBJF(RznnOkF+1|=enHWfb3@czAFvcjL!#}UR$HSVoZdd9hZ zdX>Uy&e1&Ma@K*N_slxz-fQt z^11`3F%(NN1H}v!Gf>PxF$2X66f;oFfXcwHeY1aObieC0a^wDOkr2k?$E=e4X`}l! z?{R66ulfq${Jeem_LbG3M(sAzT|A#hnYWwTbSil9v}~uSO{ahtkID8Qq21D(pSNF1 z>aX%rDEroSBl`=Z`&R=S8tW>LRlZ^LRA0jRTYlOanEj?D;49lleF)$&AV$x)CK4+K zt!W7LPO2l+>+fKbI0dph!s?kI2Gvr_^AxIQyKf>AZaP11ET}Rsg7@?i1w3Vd& z(FpA)g!EM3LfY?)(Eg{=UcwbhU-t;@D}?AF9zeZ&aJ(F&hsNkrW9$JH{$C~!|L}<% z<4LMljqsKxq^J7tNPEi&?PfxBUkgz09`wq-4xpbSbp42Y-mdyel7~9k7ZRA8_U2vC zX5TV;ruAah!frO%A*=u8@cFM$bq|h{K7-_wuI*ua>P8aPOUUPyj}bq`kR#1l?d2XY z^~UuQahf7Nt%%czc$kQ^HG8H_q!83b{XSJ~cRgf}px(uvrro`SjdFyp%h6k%a(5Y` zF9vtLU=Bu%g=*SaTj{IsZG?guW8_cvwW2?xdr(-{zX4=>-$|(6z)`Cf7I5C37uIz~?oqFiKh}T6 z;S9&M#;sd^1aG464))>OZW`GNBUff*zu+~p6CQLBT6$q0Yz%G=ZV7HRx>pI`z8;W+ zM`>L3xkaJuwNUnIsQb%aVeJg%zAQqy41Ri+;UH-Q^FPDS4u!dQQ^P$0Ye6Wt*&E6> z&h>_J4KVsV8US+jbG`N1m{<91$OZZjkv^22G~8^`aHCv9_T7eDySM)->C}d@b%M0-59agawEy|~>@OQ~k-6UfXSQ=NUqmc& zdkn>c#CIW%zP|x4gso<7-9nS$u@4Egt`D9V>l1Ps0PR{iNm#Y`Ug+ERU8qqj_wD;L zRomD)|Pc)Q01+NX2 zzYQLxUv|v7+xL3$z4y_Qel_>dSZEPcZcXT)DB}oSJxB6_bnojzmhK4dpH)VcTkEp} zp{o}{*%LpAYa2dIqu4DI z5$JaB-aU$b`6zf5#e=TXR;szZL-t#KZzODm@AA)qw>dfp74;}~h>qJ;v4*I2U8Z}< z(#1|q^-lxdF_6!Hjn1uY{o@|izX14G7{?4qTfc#{#Zt^bF$2X66f;oFKrsWw z3=}i)|2+fz{vN-tN2iQb8k7(>YRNAQ;)#PS=cX$u&mmFe_X1}s*na=_R^8_J1L^#g z3ZH9!a4nyt_CY+fp~CO*9mZorD*SHU>spVe9J2gCOFUAMMTaBk@t3n`nmDN6*W;^E zLmSa~HWhwHke+u@c}{oC_-P#&$9-0r+3zlL|Mbv^3ftkyiyR;FDj__Ck?mgX4^MJg zFL^j^m+c)|k6Zq-&Et?p|A$}v-nZN3GJVmpR?98Uix9W*@6qP>KG&^T^I8A=%}tqv zmGM_r1gZiR<&_!PtlYbJaiC)90u6tO^}7`X?v9j zpE&3mAMpr3?ZW9goN(S>(3B;FZ;zNEN^4Y`_al1i+Jjli^IvIkorwzh;r);CC#C&V zdw*j5uTd!!KV8dt#AMMauNno`O{nsw#(Oo+?>L_aUdRt!%i;|T@w{sX`bgtPUHJ7F zU?D#@%YpmEhc5ehqu75|+mE?fc4U9mYkZ0e-#&_;UD|%N%l@fR?EgyJTQ2*<8h_1& z|5W1_UHAo!zwg4Y0xy)G$?^c?6Swh!Mvr*D#<#feI*nT{{6UTHb>V5?h5CI`+aGe- zKdbTMF8n2ppK#&tXuOmUcsl+8jn8x8KDi(I#1a>Nr^c7N@Sw)my6~+U|C|eN*Z3wE zzF*^yxbQ#M_+u{o?=^nFh0{wWh4Ohy+yA4>{+z~t=)(I)@pDz%A9vZ0m%o2L@s0~0 z?Kn0K_8xJQICO`-3)z)I@!uisZx-(3|6Q`*DT3F{u#;8N{ucXpl=02LOL5!~uKC{t zoR2wdOENtQ-mCo_bB*^~!2M1Kx;_`bkA4B;n&HY9wVy*SKgT3K-9A1u>m=|gC8dJT zXBa<4I5!-!Zxp-)@lYN%xbooBxZj1(k@(2?H)#7_*M7GMxZe>6SMLQrxn#QF-&e*z z2Yd?Rxl9uVMcxa9+(!2JV`mtSEOFoz|7q88o6bWDV zLiaUoU+S{|mbTxc`{nb=XQVxTmtFBZuk9bu>r3Q4Q22ilIOW0Z|5f0A=-uU<_Agv{ zz6^Yh+ZgTZa6UMt1ZTsp^8vA`Ib~G_lC(0YDP~&XRskSwWm;PBfMaMOk7>1=&9sy! z4a-Qg+I!f`WVB~xiLoaq$J$@Y$T)QUy|6@@KmEmF)3r&8fvW;9`?c44tmxIJn{ zGVSfVKykE8SmKd{!*tkV7t`FZv97W40dwu<^=leK_pdk2KqWkkL@S1#lLXR^dOVrz za5N(rmu^Nf9kwOaS!F-x(GP#5HyaGF!y#lCu_Kdi!vK>BYXp5rpMfZY7?4920i(~v41MON^biky!`3lN&yqFBmC6f+*h0=HqbhhrV) z&bF8pHPap8X3Xu8>SUtX)mbY-NXJ?e1v=|Urp=LrM6|U4N^TOF_NHj6fTL(Cl}rtf zW<>4+(axAmG9CnCX!f+FIwwx6m`jfgJ9gQYRCicXQ(Btl+Ks`6IiyIv~dc@4i>wM-5A;{!K5D4 zszo%0FJUwz>7>~fPDJ8S`;nbJEir`q!HeLDaV8y&=&|9bqE}-M3j@c*2;4WN)4D6Q z9+MyQ+TJO#u*1Si-aNG8vfwgG9+|!Wf#+NlI=p|{>4XTRcePvLCP*u#WE*@3mByBttcCWa-!v51C(t3&1VlOoOA!s#{Si^)a6^)09plcm*OUPq`2%s8hO`>VhfhIsdEig*Txe$obv6g;X+9GhmEk#wo zDvH5%^bl^3H6tdPN&##F5x~z`JAS1K{F44*5ZzDm;3F?DAg9ao)yKkG5`|Ieg!S+sj;h_xkm@Y^WulPccmQ1)Tl!eF>I+Hq_G1-wOPBFXdz0d#uga6M5?f+Dm$9eo7Fv=hE`9Au= zMPx0+L-Kp*i}@@+fy&7jHQKg9N$y9ZcK_TS12XyI{`vZ@RP(tXwx_PKH5U literal 0 HcmV?d00001