#include #include #include #include #include using namespace std; using namespace sqlite; TEST_CASE("nullptr & unique_ptr", "[null_ptr_unique_ptr]") { database db(":memory:"); db << "CREATE TABLE tbl (id integer,age integer, name string, img blob);"; db << "INSERT INTO tbl VALUES (?, ?, ?, ?);" << 1 << 24 << "bob" << vector { 1, 2 , 3}; unique_ptr ptr_null; db << "INSERT INTO tbl VALUES (?, ?, ?, ?);" << 2 << nullptr << ptr_null << nullptr; db << "select age,name,img from tbl where id = 1" >> [](unique_ptr age_p, unique_ptr name_p, unique_ptr> img_p) { REQUIRE(age_p != nullptr); REQUIRE(name_p != nullptr); REQUIRE(img_p != nullptr); }; db << "select age,name,img from tbl where id = 2" >> [](unique_ptr age_p, unique_ptr name_p, unique_ptr> img_p) { REQUIRE(age_p == nullptr); REQUIRE(name_p == nullptr); REQUIRE(img_p == nullptr); }; }