diff options
| author | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-11-23 22:33:43 +0100 |
|---|---|---|
| committer | Aldrik Ramaekers <aldrikboy@gmail.com> | 2024-11-23 22:33:43 +0100 |
| commit | b1e857cf1471d1871a9396696b22fa531da98249 (patch) | |
| tree | 3923008a8653057698cb339faf6dcfa92e18364b /project-base/tests/test_assets.c | |
| parent | 106bb7fcadf637cec883648916cc8d19529d6199 (diff) | |
add projbase to repo
Diffstat (limited to 'project-base/tests/test_assets.c')
| -rw-r--r-- | project-base/tests/test_assets.c | 71 |
1 files changed, 71 insertions, 0 deletions
diff --git a/project-base/tests/test_assets.c b/project-base/tests/test_assets.c new file mode 100644 index 0000000..22e0a3f --- /dev/null +++ b/project-base/tests/test_assets.c @@ -0,0 +1,71 @@ +extern unsigned char _binary_examples_logo_64_bmp_start[]; +extern unsigned char _binary_examples_logo_64_bmp_end[]; + +extern unsigned char _binary_examples_logo_64_png_start[]; +extern unsigned char _binary_examples_logo_64_png_end[]; + +extern unsigned char _binary_examples_mono_ttf_start[]; +extern unsigned char _binary_examples_mono_ttf_end[]; + +s32 test_assets_queue_and_postprocess_count(int argc, char** argv) { + platform_init(argc, argv, CONFIG_DIRECTORY); + + image* img = assets_load_bitmap(_binary_examples_logo_64_bmp_start, _binary_examples_logo_64_bmp_end); + image* img2 = assets_load_image(_binary_examples_logo_64_png_start, _binary_examples_logo_64_png_end); + + thread_sleep(1000 * 50); // 50ms + + error_if(global_asset_collection.images.length == 0); + error_if(global_asset_collection.post_process_queue.length != 2); + assets_do_post_process(); + error_if(global_asset_collection.post_process_queue.length != 0); + + platform_destroy(); + + success; +} + +s32 test_assets_load_embedded(int argc, char** argv) { + platform_init(argc, argv, CONFIG_DIRECTORY); + + image* img = assets_load_bitmap(_binary_examples_logo_64_bmp_start, _binary_examples_logo_64_bmp_end); + image* img2 = assets_load_image(_binary_examples_logo_64_png_start, _binary_examples_logo_64_png_end); + font* fnt = assets_load_font(_binary_examples_mono_ttf_start, _binary_examples_mono_ttf_end, 36); + error_if(!img); + error_if(!img2); + error_if(!fnt); + + thread_sleep(1000 * 50); // 50ms + assets_do_post_process(); + + error_if(!img->loaded); + error_if(!img2->loaded); + error_if(!fnt->loaded); + + platform_destroy(); + + success; +} + +s32 test_assets_load_file(int argc, char** argv) { + platform_init(argc, argv, CONFIG_DIRECTORY); + + image* img = assets_load_bitmap_from_file("logo_64.bmp"); + image* img2 = assets_load_image_from_file("logo_64.png"); + font* fnt = assets_load_font_from_file("mono.ttf", 48); + error_if(!img); + error_if(!img2); + error_if(!fnt); + + thread_sleep(1000 * 50); // 50ms + assets_do_post_process(); + + error_if(!img->loaded); + error_if(!img2->loaded); + error_if(!fnt->loaded); + + platform_destroy(); + + success; +} + |
