From 0168b96b79db2627fdba77a8712956408aa081d1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Wed, 4 Oct 2017 21:28:18 +0200 Subject: Add postgresql support --- tests/database.cpp | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'tests/database.cpp') diff --git a/tests/database.cpp b/tests/database.cpp index f49220a..aeddea3 100644 --- a/tests/database.cpp +++ b/tests/database.cpp @@ -7,13 +7,25 @@ TEST_CASE("Database") { #ifdef USE_DATABASE +// Database::open("postgresql://test"); Database::open(":memory:"); + Database::raw_exec("DELETE FROM " + Database::irc_server_options.get_name()); + Database::raw_exec("DELETE FROM " + Database::irc_channel_options.get_name()); SECTION("Basic retrieve and update") { auto o = Database::get_irc_server_options("zouzou@example.com", "irc.example.com"); + CHECK(Database::count(Database::irc_server_options) == 0); o.save(Database::db); + CHECK(Database::count(Database::irc_server_options) == 1); + o.col() = "Different realname"; + CHECK(o.col() == "Different realname"); + o.save(Database::db); + CHECK(o.col() == "Different realname"); + CHECK(Database::count(Database::irc_server_options) == 1); + auto a = Database::get_irc_server_options("zouzou@example.com", "irc.example.com"); + CHECK(a.col() == "Different realname"); auto b = Database::get_irc_server_options("moumou@example.com", "irc.example.com"); // b does not yet exist in the db, the object is created but not yet @@ -28,7 +40,6 @@ TEST_CASE("Database") SECTION("channel options") { - Config::set("db_name", ":memory:"); auto o = Database::get_irc_channel_options("zouzou@example.com", "irc.example.com", "#foo"); CHECK(o.col() == ""); -- cgit v1.2.3 From 24dc05dd979264143223e166faa032e75f986b21 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Sun, 3 Dec 2017 16:28:38 +0100 Subject: Run some of the ci tests against a postgresql docker container --- tests/database.cpp | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'tests/database.cpp') diff --git a/tests/database.cpp b/tests/database.cpp index aeddea3..20a446b 100644 --- a/tests/database.cpp +++ b/tests/database.cpp @@ -1,14 +1,29 @@ #include "catch.hpp" +#include + +#ifdef USE_DATABASE + +#include + #include #include TEST_CASE("Database") { -#ifdef USE_DATABASE -// Database::open("postgresql://test"); +#ifdef PQ_FOUND + std::string postgresql_uri{"postgresql://"}; + const char* env_value = ::getenv("TEST_POSTGRES_URI"); + if (env_value != nullptr) + postgresql_uri += env_value; + else + postgresql_uri += "/test"; + Database::open(postgresql_uri); +#else Database::open(":memory:"); +#endif + Database::raw_exec("DELETE FROM " + Database::irc_server_options.get_name()); Database::raw_exec("DELETE FROM " + Database::irc_channel_options.get_name()); -- cgit v1.2.3 From 53fc926dc847af55a13a6ac9ea852658b0b0ba4d Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?louiz=E2=80=99?= Date: Tue, 12 Dec 2017 23:23:18 +0100 Subject: Only run the unit tests with postgresql if TEST_POSTGRES_URI env var is set MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Even if we built with postgresql’s support --- tests/database.cpp | 9 +++------ 1 file changed, 3 insertions(+), 6 deletions(-) (limited to 'tests/database.cpp') diff --git a/tests/database.cpp b/tests/database.cpp index 20a446b..7ab6da8 100644 --- a/tests/database.cpp +++ b/tests/database.cpp @@ -16,13 +16,10 @@ TEST_CASE("Database") std::string postgresql_uri{"postgresql://"}; const char* env_value = ::getenv("TEST_POSTGRES_URI"); if (env_value != nullptr) - postgresql_uri += env_value; + Database::open("postgresql://"s + env_value); else - postgresql_uri += "/test"; - Database::open(postgresql_uri); -#else - Database::open(":memory:"); #endif + Database::open(":memory:"); Database::raw_exec("DELETE FROM " + Database::irc_server_options.get_name()); Database::raw_exec("DELETE FROM " + Database::irc_channel_options.get_name()); @@ -121,5 +118,5 @@ TEST_CASE("Database") } Database::close(); -#endif } +#endif -- cgit v1.2.3