1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
#include <stdbool.h>
#include <stddef.h>
static unsigned long zaptest_fib(zap_sz const _num) {
if (_num <= 0x1u) {
if (_num == 0x0u) {return 0x0u;}
return 0x1u;
}
return zaptest_fib(_num - 0x1u) + zaptest_fib(_num - 0x2u);
}
static void zatest_memgenfn(zap_sz const _num,void * const _ptr) {
unsigned long * ptr = _ptr;
*ptr = zaptest_fib(_num);
}
static bool zaptest_test_memgen(void) {
unsigned long arr[0x8u];
zap_memgen(arr,sizeof (arr[0x0u]),sizeof (arr) / sizeof (arr[0x0u]),zatest_memgenfn);
zaptest_chk(arr[0x0u],0x0u,unsigned long,"%lX");
zaptest_chk(arr[0x1u],0x1u,unsigned long,"%lX");
zaptest_chk(arr[0x2u],0x1u,unsigned long,"%lX");
zaptest_chk(arr[0x3u],0x2u,unsigned long,"%lX");
zaptest_chk(arr[0x4u],0x3u,unsigned long,"%lX");
zaptest_chk(arr[0x5u],0x5u,unsigned long,"%lX");
zaptest_chk(arr[0x6u],0x8u,unsigned long,"%lX");
zaptest_chk(arr[0x7u],0xDu,unsigned long,"%lX");
return false;
}
|