X-Git-Url: https://git.stg.codes/stg.git/blobdiff_plain/258b7ce79dba0c01b378e73bd6b8ee9fb1ae695d..086e44c60b861d665fe2a3e1cd7d691201e91c8c:/projects/stargazer/plugins/store/db/test_pg_driver.cpp diff --git a/projects/stargazer/plugins/store/db/test_pg_driver.cpp b/projects/stargazer/plugins/store/db/test_pg_driver.cpp deleted file mode 100644 index 57b94f3a..00000000 --- a/projects/stargazer/plugins/store/db/test_pg_driver.cpp +++ /dev/null @@ -1,147 +0,0 @@ -#include -#include -#include - -#include - -#include "base_db.h" - -int main(int argc, char ** argv) -{ - BASE_DB * db; - - void * lh = dlopen("./pg_driver.so", RTLD_NOW | RTLD_GLOBAL); - - if (lh == NULL) { - std::cout << "Error loading shared object file pg_driver.so. Reason: '" << dlerror() << "'" << std::endl; - return EXIT_FAILURE; - } - - CreateDriverFn CreateDriver = reinterpret_cast(dlsym(lh, "CreateDriver")); - if (CreateDriver == NULL) { - std::cout << "Error getting symbol 'CreateDriver' address. Reason: '" << dlerror() << "'" << std::endl; - dlclose(lh); - return EXIT_FAILURE; - } - DestroyDriverFn DestroyDriver = reinterpret_cast(dlsym(lh, "DestroyDriver")); - if (DestroyDriver == NULL) { - std::cout << "Error getting symbol 'DestroyDriver' address. Reason: '" << dlerror() << "'" << std::endl; - dlclose(lh); - return EXIT_FAILURE; - } - - db = CreateDriver(); - - db->SetHost("localhost"); - db->SetDatabase("stargazer"); - db->SetUser("stg"); - db->SetPassword("123456"); - - if (db->Connect()) { - std::cout << "Error connecting db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - std::stringstream query; - query << "SELECT * FROM information_schema.tables"; - - if (db->Query(query.str())) { - std::cout << "Error querying db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - db->Disconnect(); - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - std::cout << "Tuples: " << db->GetTuples() << std::endl; - std::cout << "Columns: " << db->GetColumns() << std::endl; - BASE_DB::COLUMNS cols; - BASE_DB::COLUMNS::iterator it; - cols = db->GetColumnsNames(); - std::cout << "Cols count: " << cols.size() << std::endl; - std::cout << "Columns names:" << std::endl; - for (it = cols.begin(); it != cols.end(); ++it) - std::cout << *it << " "; - std::cout << std::endl; - - for (int i = 0; i < db->GetTuples(); ++i) { - BASE_DB::TUPLE tuple(db->GetTuple(i)); - BASE_DB::TUPLE::iterator it; - for (it = tuple.begin(); it != tuple.end(); ++it) - std::cout << it->second << " "; - std::cout << std::endl; - } - - query.str(""); - query << "create table test ( id bigserial, message text )"; - if (db->Query(query.str())) { - std::cout << "Error querying db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - db->Disconnect(); - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - query.str(""); - query << "insert into test (message) values ('abc');"; - query << "insert into test (message) values ('def');"; - query << "insert into test (message) values ('zxc');"; - if (db->Query(query.str())) { - std::cout << "Error querying db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - db->Disconnect(); - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - query.str(""); - query << "SELECT * FROM test"; - if (db->Query(query.str())) { - std::cout << "Error querying db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - db->Disconnect(); - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - std::cout << "Tuples: " << db->GetTuples() << std::endl; - std::cout << "Columns: " << db->GetColumns() << std::endl; - cols = db->GetColumnsNames(); - std::cout << "Cols count: " << cols.size() << std::endl; - std::cout << "Columns names:" << std::endl; - for (it = cols.begin(); it != cols.end(); ++it) - std::cout << *it << " "; - std::cout << std::endl; - - for (int i = 0; i < db->GetTuples(); ++i) { - BASE_DB::TUPLE tuple(db->GetTuple(i)); - BASE_DB::TUPLE::iterator it; - for (it = tuple.begin(); it != tuple.end(); ++it) - std::cout << it->second << " "; - std::cout << std::endl; - } - - query.str(""); - query << "drop table test"; - if (db->Query(query.str())) { - std::cout << "Error querying db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - db->Disconnect(); - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - if (db->Disconnect()) { - std::cout << "Error connecting db. Reason: '" << db->GetErrorMsg() << "'" << std::endl; - DestroyDriver(db); - dlclose(lh); - return EXIT_FAILURE; - } - - DestroyDriver(db); - - dlclose(lh); - - return EXIT_SUCCESS; -}