From bf67f44cfbc551b644542e25b953566ee383d5bd Mon Sep 17 00:00:00 2001 From: EuAndreh Date: Tue, 1 Oct 2024 15:50:33 -0300 Subject: Turn example files into tests under tests/functional/ --- tests/functional/streq.c | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) create mode 100644 tests/functional/streq.c (limited to 'tests/functional/streq.c') diff --git a/tests/functional/streq.c b/tests/functional/streq.c new file mode 100644 index 0000000..bbf3763 --- /dev/null +++ b/tests/functional/streq.c @@ -0,0 +1,36 @@ +#include +#include +#include +#include + + + +SQLITE_EXTENSION_INIT1 +static void +streq(sqlite3_context *const ctx, const int argc, sqlite3_value **const argv) { + assert(argc == 2); + const char *const str1 = (const char *)sqlite3_value_text(argv[0]); + const char *const str2 = (const char *)sqlite3_value_text(argv[1]); + const bool equal = strcmp(str1, str2) == 0; + const int result = equal ? 1 : 0; + sqlite3_result_int(ctx, result); +} + +int +sqlite3_extension_init( + sqlite3 *const db, + const char *const *const errmsg, + const sqlite3_api_routines *const api +) { + SQLITE_EXTENSION_INIT2(api); + return sqlite3_create_function( + db, + "streq", + 2, + SQLITE_UTF8, + (void *)db, + streq, + NULL, + NULL + ); +} -- cgit v1.2.3