From 3d6c2f43932bf8930ea0b1a53f6ebe048c7803bc Mon Sep 17 00:00:00 2001 From: Dan Goodliffe Date: Mon, 25 Aug 2025 15:18:41 +0100 Subject: Move common test code to its own library --- test/test-ingest.cpp | 42 ++++++++++++------------------------------ 1 file changed, 12 insertions(+), 30 deletions(-) (limited to 'test/test-ingest.cpp') diff --git a/test/test-ingest.cpp b/test/test-ingest.cpp index 965f502..4845bf6 100644 --- a/test/test-ingest.cpp +++ b/test/test-ingest.cpp @@ -2,32 +2,14 @@ #include #include -#include -#include +#include "test-util.hpp" + #include -#include - -#define XSTR(s) STR(s) -#define STR(s) #s -const std::filesystem::path SRC_DIR(XSTR(SRC)); -const std::filesystem::path TEST_DIR(XSTR(TEST)); -#undef XSTR -#undef STR - -class Mock : public DB::PluginMock { -public: - Mock() : DB::PluginMock("webstat", {SRC_DIR / "schema.sql"}, "user=postgres dbname=postgres") { } -}; - -BOOST_GLOBAL_FIXTURE(Mock); - -using ScanValues = std::remove_cvref_t()->values())>; -template using ParseData = std::tuple; -template -using DeleteWith = decltype([](auto obj) { - return Deleter(obj); -}); -using FilePtr = std::unique_ptr>; + +namespace { + using namespace WebStat; + BOOST_GLOBAL_FIXTURE(MockDB); +} namespace std { template @@ -53,7 +35,7 @@ namespace std { } BOOST_DATA_TEST_CASE(QuotedStringsGood, - boost::unit_test::data::make>({ + boost::unit_test::data::make>({ {R"("")", ""}, {R"("-")", "-"}, {R"(".")", "."}, @@ -79,7 +61,7 @@ BOOST_DATA_TEST_CASE(QuotedStringsBad, } BOOST_DATA_TEST_CASE(QueryStringsGood, - boost::unit_test::data::make>({ + boost::unit_test::data::make>({ {R"("")", std::nullopt}, {R"("?")", ""}, {R"("?something")", "something"}, @@ -110,7 +92,7 @@ BOOST_DATA_TEST_CASE(QueryStringsBad, BOOST_TEST_DECORATOR(*boost::unit_test::timeout(1)) BOOST_DATA_TEST_CASE(CLFStringsDecode, - boost::unit_test::data::make>({ + boost::unit_test::data::make>({ {"", ""}, {"plain", "plain"}, {R"(hex\x41)", "hexA"}, @@ -128,7 +110,7 @@ BOOST_DATA_TEST_CASE(CLFStringsDecode, BOOST_TEST_DECORATOR(*boost::unit_test::depends_on("CLFStringsDecode")) BOOST_DATA_TEST_CASE(CLFStringsGood, - boost::unit_test::data::make>({ + boost::unit_test::data::make>({ {R"("")", ""}, {R"("-")", std::nullopt}, {R"("?")", "?"}, @@ -167,7 +149,7 @@ BOOST_TEST_DECORATOR(*boost::unit_test::depends_on("QueryStringsGood")) BOOST_TEST_DECORATOR(*boost::unit_test::depends_on("CLFStringsGood")) BOOST_DATA_TEST_CASE(ExtractFields, - boost::unit_test::data::make>({ + boost::unit_test::data::make>({ {LOGLINE1, {"git.randomdan.homeip.net", "98.82.40.168", 1755561576768318, "GET", R"(/repo/gentoobrowse-api/commit/gentoobrowse-api/unittests/fixtures/756569aa764177340726dd3d40b41d89b11b20c7/app-crypt/pdfcrack/Manifest)", -- cgit v1.2.3