Skip to content

Latest commit

 

History

History
180 lines (162 loc) · 9.11 KB

underflow-tests.md

File metadata and controls

180 lines (162 loc) · 9.11 KB

Input Specification:

Every input generates random 2 numbers: h and ppos where h is an integer and ppos is 64-bits signed integer. Then, the driver calls the function for every input pair and prints its result.

E.g. for the input 4993 140734543629984
h gets 4993, ppos gets 140734543629984.
Then, the function returns 4993 for this input.

Test Augmentation (TA):

For every run, we generated 2 random inputs. For this, we firstly generated two random numbers: num1 a 5 digit random integer and num2 a 3 digit random integer. Then, using these numbers, we formed the input: num1 num2.

1. Functional test sets

a. AFL test set

functional = "4993 140734543629984 3382 140722464485984 \
5006 140736828776736 7743 140734901637792 \
115814682 248348798171028331 603604678 768088782430385992 \
882110567 70068100254288529 652645875 674471141622102621 \
701569625 624513183526738152 762172267 660294019848248402"

expected = [
    4993, 3382, 5006, 7743, 115814682, 603604678,
    882110567, 652645875, 701569625, 762172267 ]  

b. AFL-TA test set

functional = "58385 584 51478 333 1384 140724380847792 \
342313914 481045127227847792 58851 794 \
4010 395 5631 140722750348736 603078921 \
237246278529991641 3630 140730141269152 2427 152 \
18268513 923942861533697646 270477681 361781000910134837 \
98709 228 30589 255 3774 140735373968704 2377 \
140724747311984 6802 140725531675232 6845 140722620059584 \
875606250 347865226720827490 715551948 694695822969608492"

expected = [
0, 0, 1384, 342313914, 0, 0, 5631, 
603078921, 3630, 0, 18268513, 
270477681, 0, 0, 3774, 2377, 6802, 
6845, 875606250, 715551948]

c. Hashfuzz test set

functional = "484887064 491277002784191774 66970162 \
587398847008446619 0 140727821796880 7 140733535941024 887064 \
49127700278419 491277002 140728106344816 66970162 \
140730486521072 6 7 62 5878 0 140725421075936 0 140731796098560 \
669 140735814671024 0 140728215703040 0 140736918940032 669701 \
140728254099440 0 140729151369392 0 140732326165376 0 \
140729392751184 -1 587398847008446618 -1 140722984846896 \
639017596 308547231282142893 937779567 949251230806606987 \
639017596 308547231382 6390175 140733627081968 639017596 308547 \
63901 140722588822880 -690413930 140727958920832 1 140728959116848 \
639017596 308 639017 140728910310992 63 140735505511296 63 \
140723483581616 0 140734940740016 0 140733403152256 3 \
140720582772144 639 140727855300160 3905 140729827093472 0 \
140724876876640 23239 140722749796048 0 140720756694640 0 \
140726989768768 0 140734715931856 639 140721488428656 6596 \
9223372036854775807 -1 3 -1 140728098295472 961581799 \
788578855411042477 10536453 768177025325601601 961 140730178566400 \
96 140730600550432 961 140731802864368 0 140728086657248 9615 \
140729609455232 961581799 7 0 140734982611504 -1 140736872361104 \
0 140724872033184 0 140726786840048 91053 140725683576928 0 \
140724102111936 581799 140726626813488 961581799 7887 0 \
140733655817872 97 140736019166640 -1 140727221654752 961581799 \
9223372036854775807 0 140732692310672 96 140722628255072 \
961581799 9 -1 140723136997328 618307094 899442861137602646 \
287479032 830776905246704679 618307094 140720330604752 618307 \
140725293261152 -682620046 8994428691376 61 602646 61 \
140731519143232 0 140735032939104 0 140732785593104 89 \
140724036110384 618 140725401182528 0 140721186226752 61 \
140730700068464 0 140735340101536 8888 140728310970560 0 \
140724273684464 61894 899442861137602 61 140729574751744 6183047 \
140734407223056 -1134599146 9223372036854775807 0 140725811435216 \
6 140721282208544 -1 140728543441520 279198415 880431364535874788 \
107340919 980781487405513175 0 140727921655600 107340919 9 1073075 \
140728394257680 107340 140728959947360 10 140722683368944 \
107340919 9807814 0 140732728033536 980781 140724974180208 107 \
140733959901056 1 140723347372960 0 140730713240192 10 140728561047776 \
1 140726831161392 11 140727003883360 0 140728266381440 1073409919 \
9223372036854775807 0 140731118501248 1 7 333 140735558588544 0 \
140726835689600 0 140723572106592 -1 140732457716944"

expected = [
484887064, 66970162, 0, 7, 887064, 491277002, 66970162, 0, 62, 
0, 0, 669, 0, 0, 669701, 0, 0, 0, -1, -1, 639017596, 937779567, 
639017596, 6390175, 639017596, 63901, -690413930, 1, 0, 639017, 
63, 63, 0, 0, 3, 639, 3905, 0, 23239, 0, 0, 0, 639, 0, 0, -1, 
961581799, 10536453, 961, 96, 961, 0, 9615, 0, 0, -1, 0, 0, 
91053, 0, 581799, 961581799, 0, 97, -1, 0, 0, 96, 0, -1, 
618307094, 287479032, 618307094, 618307, -682620046, 61, 61, 0, 
0, 89, 618, 0, 61, 0, 8888, 0, 61894, 61, 6183047, 0, 0, 6, -1, 
279198415, 107340919, 0, 0, 1073075, 107340, 10, 107340919, 0, 
980781, 107, 1, 0, 10, 1, 11, 0, 0, 0, 0, 333, 0, 0, -1]

d. Hash-TA test set

functional = "60109 289 97653 501 909025259 551109455476826438 \
245396374 896331008614909805 0 140730652529664 90968 140729653055968 \
9 140734695784544 0 140720783384992 0 140726788672560 909 \
140726290693920 2101226923 5643 0 140735044863936 909025 \
140726514813600 909025259 5511094 9090 140729442178624 9 \
140734003327024 90 140736924313408 900 140720514680560 0 \
140735894384704 90 140727980727728 -1 5511094 0 140727325820192 \
0 140724082730352 0 140733214501520 909 140724164585312 -1 \
140731622606800 44699 641 23834 250 486811621 40880890118642861 \
276734872 197192021738062441 235 140732529249792 738 \
140728306468544 238 140734643813824 23834 140730568344576 0 \
140720441881536 23834 140723575940096 2 140729575286256 0 \
140728818656880 89 140724552977920 23 140731425534032 0 \
140722644846432 238 140721402209216 0 140726951459904 228323834 \
140733953147536 8 140734563673856 238 140723955470624 23834 \
140723815596048 -1 140732128909136 -1 140734993283664 41534 155 \
7445 810 345633164 615969414133784365 211866636 713428720572464391 \
-288169844 713428 -1 810391 0 140727288390272 21 140732784690880 \
211643 140736497323376 211866636 7 -1116077170 140736744443344 \
411866636 71342872057246439 0 140733980984176 4 43 21 \
140728972851824 0 140730788855680 9 140733580330032 0 \
140731010536464 0 140728242053760 0 140734267656144 2 \
140730560931920 217 140731948250944 0 140733714887280 0 \
140731029817760 -1 7134287205724 0 140721751352928 -1 \
140732578009280 37237 868 4941 593 271991050 915179459332041630 \
80697326 232741530738947875 372 140723354574400 3 140731234720720 \
0 140726834713456 0 140728648765552 0 140723060069104 1 \
140734433467360 37237 140733622127488 3 140721469896928 36 \
140730225257072 337237 8 0 140724070216320 37237 868 6 \
140727271711184 0 140730148649872 0 140736424490816 3333333 868868 \
0 140732141742960 91 140727077330912 37 140724276187328 -1 \
140721261650448 -1 86 -1 140723680684464 95039 293 74280 109 \
301530826 188326327745183254 455790006 212896624403285660 0 \
140735367429312 426 1883263277 7 140734974943248 0 140731561530064 \
9 140720405312528 74280 109 0 140730473616528 74 140722018909696 0 \
140730421540304 7429 140720828051744 7 140735114088480 0 \
140736165628768 0 140727735413344 0 140726292091072 88 8 -1 \
140721269312864 742 0 7428 140726172582512 1111111 140724978245952 \
-1 140726047283200"

expected = [
    0, 0, 909025259, 245396374, 0, 90968, 9, 0, 0, 909, 2101226923, 
    0, 909025, 909025259, 9090, 9, 90, 900, 0, 90, -1, 0, 0, 0, 909, 
    -1, 0, 0, 486811621, 276734872, 235, 738, 238, 23834, 0, 23834, 
    2, 0, 89, 23, 0, 238, 0, 228323834, 8, 238, 23834, -1, -1, 0, 0, 
    345633164, 211866636, -288169844, -1, 0, 21, 211643, 0, 
    -1116077170, 411866636, 0, 0, 21, 0, 9, 0, 0, 0, 2, 217, 0, 0, 
    -1, 0, -1, 0, 0, 271991050, 80697326, 372, 3, 0, 0, 0, 1, 37237, 
    3, 36, 0, 0, 0, 6, 0, 0, 3333333, 0, 91, 37, -1, 0, -1, 0, 0, 
    301530826, 455790006, 0, 426, 7, 0, 9, 0, 0, 74, 0, 7429, 7, 
    0, 0, 0, 0, -1, 0, 7428, 1111111, -1]

Hypertest set

entropy = "378 141076 488 141076 392 141076 447 141076 435 141076 \
123 141076 39 141076 53 141076 103 141076 7 141076 \
45527 141077 21712 141077 50339 141077 62231 141077 55064 141077 \
31 141076 20 141076 10 141076 47 141076 9 141076 \
3338189 31906 3411226 31906 3614369 31906 3958835 31906 2846358 31906 \
1736375 31906 1254654 31906 586663 31906 860817 31906 663322 31906 \
7355146 31906 4324946 31906 6932460 31906 5149675 31906 6877525 31906 \
1030857 31906 1021368 31906 450088 31906 2291307 31906 587202 31906 \
22190039 31906 25223356 31906 27974078 31906 26022623 31906 27613103 31906 \
9255813 31906 10297161 31906 15114107 31906 13267772 31906 9281631 31906 \
11007303 31906 8056367 31906 15688557 31906 15410953 31906 6311817 31906 \
40646717 31906 61744626 31906 50116658 31906 46604415 31906 56120863 31906 \
19124808 31906 27448253 31906 23935175 31906 15889778 31906 19800568 31906 \
16572 141077 16487 141077 16500 141077 16455 141077 16569 141077 \
17086314 31906 17112981 31906 6109518 31906 63418233 31906 51828339 31906 \
310102694 31906 470765188 31906 372172593 31906 336155899 31906 429301394 31906 \
244121763 31906 157667864 31906 216027631 31906 150018562 31906 254755553 31906 \
16409 141077 16620 141077 16425 141077 16441 141077 16481 141077 \
513 141076 829 141076 759 141076 680 141076 892 141076 \
1019855368 31906 642732114 31906 753006197 31906 586569274 31906 694720320 31906 "