From 69b4c8a7b8fbf1ed9fa4422ea6bbd4865297166f Mon Sep 17 00:00:00 2001 From: TazyFoundSoup Date: Mon, 30 Mar 2026 16:42:08 +1100 Subject: feat(bmp): Create bmp_open test --- tests/format/image/bmp/assets/rgb2x2.bmp | Bin 0 -> 70 bytes tests/format/image/bmp/bmp_open.c | 43 +++++++++++++++++++++++++++++++ 2 files changed, 43 insertions(+) create mode 100644 tests/format/image/bmp/assets/rgb2x2.bmp create mode 100644 tests/format/image/bmp/bmp_open.c (limited to 'tests/format/image/bmp') diff --git a/tests/format/image/bmp/assets/rgb2x2.bmp b/tests/format/image/bmp/assets/rgb2x2.bmp new file mode 100644 index 0000000..ec9f553 Binary files /dev/null and b/tests/format/image/bmp/assets/rgb2x2.bmp differ diff --git a/tests/format/image/bmp/bmp_open.c b/tests/format/image/bmp/bmp_open.c new file mode 100644 index 0000000..a8780c7 --- /dev/null +++ b/tests/format/image/bmp/bmp_open.c @@ -0,0 +1,43 @@ +#include +#include +#include +#include +#include +#include + +ff_result fftest_rgb2x2(ff_ctx* ctx) { + FILE* file = fopen("tests/format/image/bmp/assets/rgb2x2.bmp", "rb"); + if (!file) { + printf("file failed to open\n"); + return FF_RESULT_ERROR_INVALID_FILE; + } + + ff_stream stream = ff_create_file_stream(file); + + ff_bmp_ctx* png_ctx = NULL; + ff_result res = ff_open_bmp(ctx, &stream, &png_ctx, FF_ENABLE); + + fclose(file); + + return res; +} + +int main() { + ff_allocator alloc = { malloc, free, calloc }; + ff_ctx* ctx = ff_init(&alloc); + + ff_stream out = ff_create_file_stream(stdout); + ff_set_debug_stream(&out, ctx); + + ff_result res = fftest_rgb2x2(ctx); + + if (res == FF_RESULT_WARN_NO_IMPL) { + printf("Works!\n"); + } else { + printf("Doesn't work :(\n"); + } + + ff_cleanup(ctx); + + return 0; +} -- cgit v1.2.3