c-md/tests/utils/string/test_extract_fence_ext.c
2026-01-12 10:18:47 +01:00

50 lines
898 B
C

#include <criterion/criterion.h>
#include <stdlib.h>
#include "utils.h"
/*
** TESTS: string/extract_fence_ext.c
*/
Test(utils_string, extract_fence_ext_valid)
{
char *ext;
ext = extract_fence_ext("```c");
cr_assert_not_null(ext);
cr_assert_str_eq(ext, "c");
free(ext);
ext = extract_fence_ext("```python");
cr_assert_not_null(ext);
cr_assert_str_eq(ext, "python");
free(ext);
ext = extract_fence_ext("``` c ");
cr_assert_not_null(ext);
cr_assert_str_eq(ext, "c");
free(ext);
ext = extract_fence_ext("```\tc\n");
cr_assert_not_null(ext);
cr_assert_str_eq(ext, "c");
free(ext);
}
Test(utils_string, extract_fence_ext_invalid)
{
char *ext;
ext = extract_fence_ext("```");
cr_assert_null(ext);
ext = extract_fence_ext("```\n");
cr_assert_null(ext);
ext = extract_fence_ext("not a fence");
cr_assert_null(ext);
ext = extract_fence_ext("");
cr_assert_null(ext);
}