diff options
| author | Thomas Jarosch <tomj@simonv.com> | 2015-01-03 17:06:21 +0100 |
|---|---|---|
| committer | Thomas Jarosch <tomj@simonv.com> | 2015-01-03 18:17:11 +0100 |
| commit | 7d5f13300708c0f0ef15150fdebd6158260247d2 (patch) | |
| tree | abfe56d7ccd8735e60d0587ce28b13a62580698d /firmware/test/buflib/util.c | |
| parent | e7d94323bcb481d4fb1e1e77fdd26b23916aca1d (diff) | |
| download | rockbox-7d5f13300708c0f0ef15150fdebd6158260247d2.zip rockbox-7d5f13300708c0f0ef15150fdebd6158260247d2.tar.gz rockbox-7d5f13300708c0f0ef15150fdebd6158260247d2.tar.bz2 rockbox-7d5f13300708c0f0ef15150fdebd6158260247d2.tar.xz | |
Bring abroad second buflib test
Interfaces with core_alloc_* instead of buflib directly.
Provide UT_core_allocator_init() with
a fixed buffer size for predictable results.
Change-Id: I26a7b3101f7782063547940bded52d8202638394
Diffstat (limited to 'firmware/test/buflib/util.c')
| -rw-r--r-- | firmware/test/buflib/util.c | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/firmware/test/buflib/util.c b/firmware/test/buflib/util.c index 934a8be..66a02e8 100644 --- a/firmware/test/buflib/util.c +++ b/firmware/test/buflib/util.c @@ -20,9 +20,42 @@ ****************************************************************************/ #include "util.h" #include "stdio.h" +#include "buflib.h" +#include "system.h" + +void print_simple(const char *str) +{ + printf("%s\n", str); +} void print_handle(int handle_num, const char *str) { (void)handle_num; printf("%s\n", str); } + +/* fake core_allocator_init() with a fixed 50kb buffer size */ +void UT_core_allocator_init() +{ + extern struct buflib_context core_ctx; + static char buf[50<<10]; + unsigned char *raw_start = buf; + unsigned char *aligned_start = ALIGN_UP(raw_start, sizeof(intptr_t)); + + buflib_init(&core_ctx, aligned_start, sizeof(buf) - (aligned_start - raw_start)); +} + +/* TODO: those should be part of core_alloc */ +void core_print_blocks(void (*print)(const char*)) +{ + (void)print; + extern struct buflib_context core_ctx; + buflib_print_blocks(&core_ctx, &print_handle); +} + +void core_print_allocs(void (*print)(const char*)) +{ + (void)print; + extern struct buflib_context core_ctx; + buflib_print_allocs(&core_ctx, &print_handle); +} |