Home | History | Annotate | Line # | Download | only in unit-tests
      1  1.6  rillig # $NetBSD: varmod-hash.mk,v 1.6 2024/07/20 11:05:12 rillig Exp $
      2  1.1  rillig #
      3  1.4  rillig # Tests for the :hash variable modifier, which computes a 32-bit hash from
      4  1.4  rillig # the value of the expression.
      5  1.4  rillig 
      6  1.4  rillig # Test vectors for generating certain hashes.  Found by a brute force
      7  1.4  rillig # search over [a-z]{8}.
      8  1.4  rillig #
      9  1.4  rillig VECTORS+=	00000000 adjbuqnt
     10  1.4  rillig VECTORS+=	00000001 beiiyxdp
     11  1.4  rillig VECTORS+=	00000002 ajriwzqe
     12  1.4  rillig VECTORS+=	00000004 aimszzcb
     13  1.4  rillig VECTORS+=	00000008 afffvsgz
     14  1.4  rillig VECTORS+=	00000010 alkksbun
     15  1.4  rillig VECTORS+=	00000020 arqeianj
     16  1.4  rillig VECTORS+=	00000040 acgaltwv
     17  1.4  rillig VECTORS+=	00000080 addsjxec
     18  1.4  rillig VECTORS+=	00000100 acbozubm
     19  1.4  rillig VECTORS+=	00000200 acnbugtp
     20  1.4  rillig VECTORS+=	00000400 ajyfkpcl
     21  1.4  rillig VECTORS+=	00000800 akobyelz
     22  1.4  rillig VECTORS+=	00001000 aclmaggk
     23  1.4  rillig VECTORS+=	00002000 aauwlqiq
     24  1.4  rillig VECTORS+=	00004000 ankfvoqf
     25  1.4  rillig VECTORS+=	00008000 airtytts
     26  1.4  rillig VECTORS+=	00010000 bfwwrqfi
     27  1.4  rillig VECTORS+=	00020000 actwkzix
     28  1.4  rillig VECTORS+=	00040000 alsfbgvo
     29  1.4  rillig VECTORS+=	00080000 aioiauem
     30  1.4  rillig VECTORS+=	00100000 bxexhpji
     31  1.4  rillig VECTORS+=	00200000 awtxcwch
     32  1.4  rillig VECTORS+=	00400000 aoqpmqam
     33  1.4  rillig VECTORS+=	00800000 akgtvjhz
     34  1.4  rillig VECTORS+=	01000000 bcmsuvrm
     35  1.4  rillig VECTORS+=	02000000 aqnktorm
     36  1.4  rillig VECTORS+=	04000000 aweqylny
     37  1.4  rillig VECTORS+=	08000000 crvkuyze
     38  1.4  rillig VECTORS+=	10000000 alxiatjv
     39  1.4  rillig VECTORS+=	20000000 aezwuukx
     40  1.4  rillig VECTORS+=	40000000 abdpnifu
     41  1.4  rillig VECTORS+=	80000000 auusgoii
     42  1.5  rillig VECTORS+=	ffffffff ahnvmfdw
     43  1.4  rillig 
     44  1.4  rillig VECTORS+=	b2af338b ""
     45  1.4  rillig VECTORS+=	3360ac65 a
     46  1.4  rillig VECTORS+=	7747f046 ab
     47  1.4  rillig VECTORS+=	9ca87054 abc
     48  1.4  rillig VECTORS+=	880fe816 abcd
     49  1.4  rillig VECTORS+=	208fcbd3 abcde
     50  1.4  rillig VECTORS+=	d5d376eb abcdef
     51  1.4  rillig VECTORS+=	de41416c abcdefghijklmnopqrstuvwxyz
     52  1.4  rillig 
     53  1.4  rillig .for hash input in ${VECTORS}
     54  1.4  rillig .  if ${input:S,^""$,,:hash} != ${hash}
     55  1.4  rillig .    warning Expected ${hash} for ${input}, but was ${input:hash}.
     56  1.4  rillig .  endif
     57  1.4  rillig .endfor
     58  1.1  rillig 
     59  1.6  rillig all: step-{1,2,3,4,5}
     60  1.6  rillig step-1:
     61  1.3  rillig 	@echo ${12345:L:has}			# modifier name too short
     62  1.6  rillig step-2:
     63  1.3  rillig 	@echo ${12345:L:hash}			# ok
     64  1.6  rillig step-3:
     65  1.3  rillig 	@echo ${12345:L:hash=SHA-256}		# :hash does not accept '='
     66  1.6  rillig step-4:
     67  1.3  rillig 	@echo ${12345:L:hasX}			# misspelled
     68  1.6  rillig step-5:
     69  1.3  rillig 	@echo ${12345:L:hashed}			# modifier name too long
     70