From 54feddabed045b4c8e268355e1a82c5d6bf6ca5d Mon Sep 17 00:00:00 2001 From: Pekka Enberg Date: Wed, 17 Jul 2024 12:09:32 +0300 Subject: [PATCH] sqlite3/tests: Add missing test-prepare.c --- sqlite3/tests/test-prepare.c | 24 ++++++++++++++++++++++++ 1 file changed, 24 insertions(+) create mode 100644 sqlite3/tests/test-prepare.c diff --git a/sqlite3/tests/test-prepare.c b/sqlite3/tests/test-prepare.c new file mode 100644 index 000000000..d9f358273 --- /dev/null +++ b/sqlite3/tests/test-prepare.c @@ -0,0 +1,24 @@ +#include "check.h" + +#include +#include +#include +#include + +void test_prepare_misuse(void) +{ + sqlite3 *db; + + CHECK_EQUAL(SQLITE_OK, sqlite3_open("../../testing/testing.db", &db)); + + // Database handle is NULL. + CHECK_EQUAL(SQLITE_MISUSE, sqlite3_prepare_v2(NULL, "SELECT 1", -1, NULL, NULL)); + + // Output statement is NULL. + CHECK_EQUAL(SQLITE_MISUSE, sqlite3_prepare_v2(db, "SELECT 1", -1, NULL, NULL)); + + // SQL string length is too short, truncating the statement. + CHECK_EQUAL(SQLITE_MISUSE, sqlite3_prepare_v2(db, "SELECT 1", 7, NULL, NULL)); + + CHECK_EQUAL(SQLITE_OK, sqlite3_close(db)); +}