diff --git a/test/framework/utils.cc b/test/framework/utils.cc index ccb9b47..c02442c 100644 --- a/test/framework/utils.cc +++ b/test/framework/utils.cc @@ -4,6 +4,8 @@ #include "utils.hh" #include +#include +#include #include @@ -18,7 +20,7 @@ namespace pEp { namespace Log { void logH1(string msg) { - char decoration{'='}; + char decoration{ '=' }; cout << endl << endl << std::string(30, decoration) << ' ' << msg << ' ' @@ -27,7 +29,7 @@ namespace pEp { void logH2(string msg) { - char decoration{'-'}; + char decoration{ '-' }; cout << endl << std::string(10, decoration) << ' ' << msg << ' ' << std::string(10, decoration) << endl; @@ -35,9 +37,9 @@ namespace pEp { } // namespace Log namespace Utils { + string identity_to_string(::pEp_identity *ident, bool full, int indent) { - stringstream builder; if (ident != nullptr) { if (full) { @@ -161,17 +163,48 @@ namespace pEp { return builder.str(); } - void print_exception(const exception& e, int level) + void print_exception(const exception &e, int level) { cerr << string(level, ' ') << "exception: " << e.what() << endl; try { rethrow_if_nested(e); - } catch (const exception& e) { + } catch (const exception &e) { print_exception(e, level + 1); } catch (...) { } } - } // namespace Utils + // File utils + ofstream file_create(const string &filename) + { + ofstream outfile{ filename }; + return outfile; + } + + bool file_exists(const string &filename) + { + + ifstream ifile(filename.c_str()); + return (bool)ifile; + } + + void file_delete(const string &filename) + { + int status = remove(filename.c_str()); + if (status) { + runtime_error e{ string( + "file_delete(\"" + filename + "\") - " + strerror(errno)) }; + throw(e); + } + } + + void file_ensure_not_existing(string path) + { + while (file_exists(path)) { + file_delete(path); + } + } + +} // namespace Utils } // namespace Test } // namespace pEp diff --git a/test/framework/utils.hh b/test/framework/utils.hh index 9a1119a..5507f0a 100644 --- a/test/framework/utils.hh +++ b/test/framework/utils.hh @@ -17,16 +17,25 @@ namespace pEp { void logH2(std::string msg); } namespace Utils { + // pEpEngine datatypes to string std::string identity_to_string(::pEp_identity *ident, bool full = true, int indent = 0); std::string identitylist_to_string(::identity_list *idl, bool full = true, int indent = 0); std::string member_to_string(::pEp_member *member, bool full = true, int indent = 0); std::string memberlist_to_string(::member_list *mbl, bool full = true, int indent = 0); std::string group_to_string(::pEp_group *group, bool full = true, int indent = 0); + // C++/STL data types to string template std::string vector_to_string(std::vector v); + // exception utils void print_exception(const std::exception& e, int level = 0); + + // file utils + std::ofstream file_create(const std::string &filename); + bool file_exists(const std::string &filename); + void file_delete(const std::string &filename); + void file_ensure_not_existing(std::string path); } } // namespace Test } // namespace pEp diff --git a/test/test_pEpSQLite.cc b/test/test_pEpSQLite.cc index 4a17eb7..aa10543 100644 --- a/test/test_pEpSQLite.cc +++ b/test/test_pEpSQLite.cc @@ -1,51 +1,18 @@ #include "test_pEpSQLite.hh" -#include "../src/sqlite3.h" -#include "../src/pEpLog.hh" #include "../src/pEpSQLite.hh" +#include "../src/pEpLog.hh" #include "framework/utils.hh" -#include -#include + #include -#include using namespace std; using namespace pEp; using namespace pEp::Test; - -using namespace Test::Log; - -ofstream file_create(const string& filename) -{ - ofstream outfile{ filename }; - return outfile; -} - -bool file_exists(const string& filename) -{ - - ifstream ifile(filename.c_str()); - return (bool)ifile; -} - -void file_delete(const string& filename) -{ - int status = remove(filename.c_str()); - if (status) { - runtime_error e{ string("file_delete(\"" + filename + "\") - " + strerror(errno)) }; - throw(e); - } -} - +using namespace pEp::Test::Log; +using namespace pEp::Test::Utils; namespace pEp { namespace Test { - // Util - void ensure_file_not_existing(string path) - { - while (file_exists(path)) { - file_delete(path); - } - } // --------------------------------- FIXTURES --------------------------------- // filenames string fixture_db_filename_new() @@ -82,7 +49,7 @@ namespace pEp { // pEpLog("called"); string path = fixture_db_filename_new(); // cout << "fixture: \"" << path << "\" not existing" << endl; - ensure_file_not_existing(path); + file_ensure_not_existing(path); return path; } @@ -91,7 +58,7 @@ namespace pEp { // pEpLog("called"); string path = "existing.db"; // cout << "fixture: \"" << path << "\" not existing" << endl; - ensure_file_not_existing(path); + file_ensure_not_existing(path); return path; } @@ -100,7 +67,7 @@ namespace pEp { // pEpLog("called"); // cout << "creating corrupt db" << endl; string path = fixture_db_filename_corrupt(); - ensure_file_not_existing(path); + file_ensure_not_existing(path); ofstream db_corrupt = file_create(path); db_corrupt << "G4rbage" << endl; db_corrupt.close();