aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/zencore/base64.cpp4
-rw-r--r--src/zencore/basicfile.cpp4
-rw-r--r--src/zencore/blake3.cpp4
-rw-r--r--src/zencore/callstack.cpp4
-rw-r--r--src/zencore/compactbinary.cpp8
-rw-r--r--src/zencore/compactbinarybuilder.cpp4
-rw-r--r--src/zencore/compactbinaryjson.cpp4
-rw-r--r--src/zencore/compactbinarypackage.cpp4
-rw-r--r--src/zencore/compactbinaryvalidation.cpp4
-rw-r--r--src/zencore/compactbinaryyaml.cpp4
-rw-r--r--src/zencore/compositebuffer.cpp5
-rw-r--r--src/zencore/compress.cpp4
-rw-r--r--src/zencore/crypto.cpp4
-rw-r--r--src/zencore/filesystem.cpp4
-rw-r--r--src/zencore/include/zencore/testing.h7
-rw-r--r--src/zencore/intmath.cpp4
-rw-r--r--src/zencore/iobuffer.cpp4
-rw-r--r--src/zencore/jobqueue.cpp4
-rw-r--r--src/zencore/logging.cpp4
-rw-r--r--src/zencore/md5.cpp4
-rw-r--r--src/zencore/memoryview.cpp4
-rw-r--r--src/zencore/mpscqueue.cpp2
-rw-r--r--src/zencore/parallelwork.cpp4
-rw-r--r--src/zencore/refcount.cpp4
-rw-r--r--src/zencore/sha1.cpp4
-rw-r--r--src/zencore/sharedbuffer.cpp4
-rw-r--r--src/zencore/stream.cpp4
-rw-r--r--src/zencore/string.cpp4
-rw-r--r--src/zencore/testing.cpp47
-rw-r--r--src/zencore/uid.cpp4
-rw-r--r--src/zencore/workthreadpool.cpp4
-rw-r--r--src/zencore/zencore.cpp2
-rw-r--r--src/zenhttp/clients/httpclientcommon.cpp4
-rw-r--r--src/zenhttp/httpclient.cpp4
-rw-r--r--src/zenhttp/httpclient_test.cpp4
-rw-r--r--src/zenhttp/httpserver.cpp4
-rw-r--r--src/zenhttp/packageformat.cpp4
-rw-r--r--src/zenhttp/security/passwordsecurity.cpp5
-rw-r--r--src/zenhttp/servers/wstest.cpp4
-rw-r--r--src/zennet/statsdclient.cpp4
-rw-r--r--src/zenremotestore/builds/buildmanifest.cpp4
-rw-r--r--src/zenremotestore/builds/buildsavedstate.cpp4
-rw-r--r--src/zenremotestore/builds/buildstorageoperations.cpp4
-rw-r--r--src/zenremotestore/chunking/chunkblock.cpp4
-rw-r--r--src/zenremotestore/chunking/chunkedcontent.cpp4
-rw-r--r--src/zenremotestore/chunking/chunkedfile.cpp4
-rw-r--r--src/zenremotestore/chunking/chunkingcache.cpp4
-rw-r--r--src/zenremotestore/filesystemutils.cpp4
-rw-r--r--src/zenserver-test/buildstore-tests.cpp4
-rw-r--r--src/zenserver-test/cache-tests.cpp4
-rw-r--r--src/zenserver-test/cacherequests.cpp4
-rw-r--r--src/zenserver-test/function-tests.cpp4
-rw-r--r--src/zenserver-test/hub-tests.cpp6
-rw-r--r--src/zenserver-test/projectstore-tests.cpp4
-rw-r--r--src/zenserver-test/workspace-tests.cpp4
-rw-r--r--src/zenserver-test/zenserver-test.cpp5
-rw-r--r--src/zenstore/blockstore.cpp4
-rw-r--r--src/zenstore/buildstore/buildstore.cpp4
-rw-r--r--src/zenstore/cache/cachepolicy.cpp5
-rw-r--r--src/zenstore/cache/structuredcachestore.cpp4
-rw-r--r--src/zenstore/cas.cpp4
-rw-r--r--src/zenstore/compactcas.cpp4
-rw-r--r--src/zenstore/filecas.cpp4
-rw-r--r--src/zenstore/gc.cpp4
-rw-r--r--src/zenstore/projectstore.cpp4
-rw-r--r--src/zenstore/workspaces.cpp4
-rw-r--r--src/zentelemetry/otlptrace.cpp4
-rw-r--r--src/zentelemetry/stats.cpp4
-rw-r--r--src/zenutil/config/commandlineoptions.cpp4
-rw-r--r--src/zenutil/rpcrecording.cpp2
-rw-r--r--src/zenutil/wildcard.cpp4
71 files changed, 311 insertions, 23 deletions
diff --git a/src/zencore/base64.cpp b/src/zencore/base64.cpp
index fdf5f2d66..96e121799 100644
--- a/src/zencore/base64.cpp
+++ b/src/zencore/base64.cpp
@@ -180,6 +180,8 @@ template bool Base64::Decode<wchar_t>(const wchar_t* Source, uint32_t Length, ui
using namespace std::string_literals;
+TEST_SUITE_BEGIN("core.base64");
+
TEST_CASE("Base64")
{
auto EncodeString = [](std::string_view Input) -> std::string {
@@ -290,6 +292,8 @@ TEST_CASE("Base64")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/basicfile.cpp b/src/zencore/basicfile.cpp
index bd4d119fb..9dcf7663a 100644
--- a/src/zencore/basicfile.cpp
+++ b/src/zencore/basicfile.cpp
@@ -888,6 +888,8 @@ WriteToTempFile(CompositeBuffer&& Buffer, const std::filesystem::path& Path)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.basicfile");
+
TEST_CASE("BasicFile")
{
ScopedCurrentDirectoryChange _;
@@ -1081,6 +1083,8 @@ TEST_CASE("BasicFileBuffer")
}
}
+TEST_SUITE_END();
+
void
basicfile_forcelink()
{
diff --git a/src/zencore/blake3.cpp b/src/zencore/blake3.cpp
index 054f0d3a0..123918de5 100644
--- a/src/zencore/blake3.cpp
+++ b/src/zencore/blake3.cpp
@@ -200,6 +200,8 @@ BLAKE3Stream::GetHash()
// return text;
// }
+TEST_SUITE_BEGIN("core.blake3");
+
TEST_CASE("BLAKE3")
{
SUBCASE("Basics")
@@ -237,6 +239,8 @@ TEST_CASE("BLAKE3")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/callstack.cpp b/src/zencore/callstack.cpp
index 8aa1111bf..ee0b0625a 100644
--- a/src/zencore/callstack.cpp
+++ b/src/zencore/callstack.cpp
@@ -260,6 +260,8 @@ GetCallstackRaw(void* CaptureBuffer, int FramesToSkip, int FramesToCapture)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.callstack");
+
TEST_CASE("Callstack.Basic")
{
void* Addresses[4];
@@ -272,6 +274,8 @@ TEST_CASE("Callstack.Basic")
}
}
+TEST_SUITE_END();
+
void
callstack_forcelink()
{
diff --git a/src/zencore/compactbinary.cpp b/src/zencore/compactbinary.cpp
index b43cc18f1..9c81305d0 100644
--- a/src/zencore/compactbinary.cpp
+++ b/src/zencore/compactbinary.cpp
@@ -1512,6 +1512,8 @@ uson_forcelink()
{
}
+TEST_SUITE_BEGIN("core.compactbinary");
+
TEST_CASE("guid")
{
using namespace std::literals;
@@ -1704,8 +1706,6 @@ TEST_CASE("uson.datetime")
//////////////////////////////////////////////////////////////////////////
-TEST_SUITE_BEGIN("core.datetime");
-
TEST_CASE("core.datetime.compare")
{
DateTime T1(2000, 12, 13);
@@ -1732,10 +1732,6 @@ TEST_CASE("core.datetime.add")
CHECK(dT + T1 - T2 == dT1);
}
-TEST_SUITE_END();
-
-TEST_SUITE_BEGIN("core.timespan");
-
TEST_CASE("core.timespan.compare")
{
TimeSpan T1(1000);
diff --git a/src/zencore/compactbinarybuilder.cpp b/src/zencore/compactbinarybuilder.cpp
index 63c0b9c5c..a9ba30750 100644
--- a/src/zencore/compactbinarybuilder.cpp
+++ b/src/zencore/compactbinarybuilder.cpp
@@ -710,6 +710,8 @@ usonbuilder_forcelink()
// return "";
// }
+TEST_SUITE_BEGIN("core.compactbinarybuilder");
+
TEST_CASE("usonbuilder.object")
{
using namespace std::literals;
@@ -1530,6 +1532,8 @@ TEST_CASE("usonbuilder.stream")
CHECK(ValidateCompactBinary(Object.GetBuffer(), CbValidateMode::All) == CbValidateError::None);
}
}
+
+TEST_SUITE_END();
#endif
} // namespace zen
diff --git a/src/zencore/compactbinaryjson.cpp b/src/zencore/compactbinaryjson.cpp
index abbec360a..da560a449 100644
--- a/src/zencore/compactbinaryjson.cpp
+++ b/src/zencore/compactbinaryjson.cpp
@@ -654,6 +654,8 @@ cbjson_forcelink()
{
}
+TEST_SUITE_BEGIN("core.compactbinaryjson");
+
TEST_CASE("uson.json")
{
using namespace std::literals;
@@ -872,6 +874,8 @@ TEST_CASE("json.uson")
}
}
+TEST_SUITE_END();
+
#endif // ZEN_WITH_TESTS
} // namespace zen
diff --git a/src/zencore/compactbinarypackage.cpp b/src/zencore/compactbinarypackage.cpp
index ffe64f2e9..56a292ca6 100644
--- a/src/zencore/compactbinarypackage.cpp
+++ b/src/zencore/compactbinarypackage.cpp
@@ -805,6 +805,8 @@ usonpackage_forcelink()
{
}
+TEST_SUITE_BEGIN("core.compactbinarypackage");
+
TEST_CASE("usonpackage")
{
using namespace std::literals;
@@ -1343,6 +1345,8 @@ TEST_CASE("usonpackage.invalidpackage")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/compactbinaryvalidation.cpp b/src/zencore/compactbinaryvalidation.cpp
index d7292f405..3e78f8ef1 100644
--- a/src/zencore/compactbinaryvalidation.cpp
+++ b/src/zencore/compactbinaryvalidation.cpp
@@ -753,10 +753,14 @@ usonvalidation_forcelink()
{
}
+TEST_SUITE_BEGIN("core.compactbinaryvalidation");
+
TEST_CASE("usonvalidation")
{
SUBCASE("Basic") {}
}
+
+TEST_SUITE_END();
#endif
} // namespace zen
diff --git a/src/zencore/compactbinaryyaml.cpp b/src/zencore/compactbinaryyaml.cpp
index b308af418..b7f2c55df 100644
--- a/src/zencore/compactbinaryyaml.cpp
+++ b/src/zencore/compactbinaryyaml.cpp
@@ -412,6 +412,8 @@ cbyaml_forcelink()
{
}
+TEST_SUITE_BEGIN("core.compactbinaryyaml");
+
TEST_CASE("uson.yaml")
{
using namespace std::literals;
@@ -524,6 +526,8 @@ mixed_seq:
)"sv);
}
}
+
+TEST_SUITE_END();
#endif
} // namespace zen
diff --git a/src/zencore/compositebuffer.cpp b/src/zencore/compositebuffer.cpp
index 252ac9045..ed2b16384 100644
--- a/src/zencore/compositebuffer.cpp
+++ b/src/zencore/compositebuffer.cpp
@@ -297,6 +297,9 @@ CompositeBuffer::IterateRange(uint64_t Offset,
}
#if ZEN_WITH_TESTS
+
+TEST_SUITE_BEGIN("core.compositebuffer");
+
TEST_CASE("CompositeBuffer Null")
{
CompositeBuffer Buffer;
@@ -462,6 +465,8 @@ TEST_CASE("CompositeBuffer Composite")
TestIterateRange(8, 0, MakeMemoryView(FlatArray).Mid(8, 0), FlatView2);
}
+TEST_SUITE_END();
+
void
compositebuffer_forcelink()
{
diff --git a/src/zencore/compress.cpp b/src/zencore/compress.cpp
index 25ed0fc46..6aa0adce0 100644
--- a/src/zencore/compress.cpp
+++ b/src/zencore/compress.cpp
@@ -2420,6 +2420,8 @@ private:
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.compress");
+
TEST_CASE("CompressedBuffer")
{
uint8_t Zeroes[1024]{};
@@ -2967,6 +2969,8 @@ TEST_CASE("CompressedBufferReader")
}
}
+TEST_SUITE_END();
+
void
compress_forcelink()
{
diff --git a/src/zencore/crypto.cpp b/src/zencore/crypto.cpp
index 09eebb6ae..049854b42 100644
--- a/src/zencore/crypto.cpp
+++ b/src/zencore/crypto.cpp
@@ -449,6 +449,8 @@ crypto_forcelink()
{
}
+TEST_SUITE_BEGIN("core.crypto");
+
TEST_CASE("crypto.bits")
{
using CryptoBits256Bit = CryptoBits<256>;
@@ -500,6 +502,8 @@ TEST_CASE("crypto.aes")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/filesystem.cpp b/src/zencore/filesystem.cpp
index 03398860b..9885b2ada 100644
--- a/src/zencore/filesystem.cpp
+++ b/src/zencore/filesystem.cpp
@@ -3309,6 +3309,8 @@ filesystem_forcelink()
{
}
+TEST_SUITE_BEGIN("core.filesystem");
+
TEST_CASE("filesystem")
{
using namespace std::filesystem;
@@ -3603,6 +3605,8 @@ TEST_CASE("SharedMemory")
CHECK(!OpenSharedMemory("SharedMemoryTest0", 482, false));
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/include/zencore/testing.h b/src/zencore/include/zencore/testing.h
index 43bdbbffe..8410216c4 100644
--- a/src/zencore/include/zencore/testing.h
+++ b/src/zencore/include/zencore/testing.h
@@ -43,8 +43,9 @@ public:
TestRunner();
~TestRunner();
- int ApplyCommandLine(int argc, char const* const* argv);
- int Run();
+ void SetDefaultSuiteFilter(const char* Pattern);
+ int ApplyCommandLine(int Argc, char const* const* Argv);
+ int Run();
private:
struct Impl;
@@ -59,7 +60,7 @@ private:
return Runner.Run(); \
}()
-int RunTestMain(int argc, char* argv[], const char* traceName, void (*forceLink)());
+int RunTestMain(int Argc, char* Argv[], const char* ExecutableName, void (*ForceLink)());
} // namespace zen::testing
#endif
diff --git a/src/zencore/intmath.cpp b/src/zencore/intmath.cpp
index 32f82b486..fedf76edc 100644
--- a/src/zencore/intmath.cpp
+++ b/src/zencore/intmath.cpp
@@ -19,6 +19,8 @@ intmath_forcelink()
{
}
+TEST_SUITE_BEGIN("core.intmath");
+
TEST_CASE("intmath")
{
CHECK(FloorLog2(0x00) == 0);
@@ -66,6 +68,8 @@ TEST_CASE("intmath")
CHECK(ByteSwap(uint64_t(0x214d'6172'7469'6e21ull)) == 0x216e'6974'7261'4d21ull);
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/iobuffer.cpp b/src/zencore/iobuffer.cpp
index 1c31d6620..c47c54981 100644
--- a/src/zencore/iobuffer.cpp
+++ b/src/zencore/iobuffer.cpp
@@ -719,6 +719,8 @@ iobuffer_forcelink()
{
}
+TEST_SUITE_BEGIN("core.iobuffer");
+
TEST_CASE("IoBuffer")
{
zen::IoBuffer buffer1;
@@ -756,6 +758,8 @@ TEST_CASE("IoBuffer.mmap")
# endif
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/jobqueue.cpp b/src/zencore/jobqueue.cpp
index 75c1be42b..35724b07a 100644
--- a/src/zencore/jobqueue.cpp
+++ b/src/zencore/jobqueue.cpp
@@ -460,6 +460,8 @@ jobqueue_forcelink()
{
}
+TEST_SUITE_BEGIN("core.jobqueue");
+
TEST_CASE("JobQueue")
{
std::unique_ptr<JobQueue> Queue(MakeJobQueue(2, "queue"));
@@ -580,6 +582,8 @@ TEST_CASE("JobQueue")
}
JobsLatch.Wait();
}
+
+TEST_SUITE_END();
#endif
} // namespace zen
diff --git a/src/zencore/logging.cpp b/src/zencore/logging.cpp
index e79c4b41c..e960a2729 100644
--- a/src/zencore/logging.cpp
+++ b/src/zencore/logging.cpp
@@ -540,6 +540,8 @@ logging_forcelink()
using namespace std::literals;
+TEST_SUITE_BEGIN("core.logging");
+
TEST_CASE("simple.bread")
{
ExtendableStringBuilder<256> Crumbs;
@@ -588,6 +590,8 @@ TEST_CASE("simple.bread")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/md5.cpp b/src/zencore/md5.cpp
index 4ec145697..3baee91c2 100644
--- a/src/zencore/md5.cpp
+++ b/src/zencore/md5.cpp
@@ -437,6 +437,8 @@ md5_forcelink()
// return md5text;
// }
+TEST_SUITE_BEGIN("core.md5");
+
TEST_CASE("MD5")
{
using namespace std::literals;
@@ -458,6 +460,8 @@ TEST_CASE("MD5")
CHECK(Output.compare(Buffer));
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/memoryview.cpp b/src/zencore/memoryview.cpp
index 1f6a6996c..1654b1766 100644
--- a/src/zencore/memoryview.cpp
+++ b/src/zencore/memoryview.cpp
@@ -18,6 +18,8 @@ namespace zen {
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.memoryview");
+
TEST_CASE("MemoryView")
{
{
@@ -35,6 +37,8 @@ TEST_CASE("MemoryView")
CHECK(MakeMemoryView<float>({1.0f, 1.2f}).GetSize() == 8);
}
+TEST_SUITE_END();
+
void
memory_forcelink()
{
diff --git a/src/zencore/mpscqueue.cpp b/src/zencore/mpscqueue.cpp
index 29c76c3ca..f749f1c90 100644
--- a/src/zencore/mpscqueue.cpp
+++ b/src/zencore/mpscqueue.cpp
@@ -8,6 +8,7 @@
namespace zen {
#if ZEN_WITH_TESTS && 0
+TEST_SUITE_BEGIN("core.mpscqueue");
TEST_CASE("mpsc")
{
MpscQueue<std::string> Queue;
@@ -15,6 +16,7 @@ TEST_CASE("mpsc")
std::optional<std::string> Value = Queue.Dequeue();
CHECK_EQ(Value, "hello");
}
+TEST_SUITE_END();
#endif
void
diff --git a/src/zencore/parallelwork.cpp b/src/zencore/parallelwork.cpp
index d86d5815f..94696f479 100644
--- a/src/zencore/parallelwork.cpp
+++ b/src/zencore/parallelwork.cpp
@@ -157,6 +157,8 @@ ParallelWork::RethrowErrors()
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.parallelwork");
+
TEST_CASE("parallellwork.nowork")
{
std::atomic<bool> AbortFlag;
@@ -255,6 +257,8 @@ TEST_CASE("parallellwork.limitqueue")
Work.Wait();
}
+TEST_SUITE_END();
+
void
parallellwork_forcelink()
{
diff --git a/src/zencore/refcount.cpp b/src/zencore/refcount.cpp
index a6a86ee12..f19afe715 100644
--- a/src/zencore/refcount.cpp
+++ b/src/zencore/refcount.cpp
@@ -33,6 +33,8 @@ refcount_forcelink()
{
}
+TEST_SUITE_BEGIN("core.refcount");
+
TEST_CASE("RefPtr")
{
RefPtr<TestRefClass> Ref;
@@ -60,6 +62,8 @@ TEST_CASE("RefPtr")
CHECK(IsDestroyed == true);
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/sha1.cpp b/src/zencore/sha1.cpp
index 3ee74d7d8..807ae4c30 100644
--- a/src/zencore/sha1.cpp
+++ b/src/zencore/sha1.cpp
@@ -373,6 +373,8 @@ sha1_forcelink()
// return sha1text;
// }
+TEST_SUITE_BEGIN("core.sha1");
+
TEST_CASE("SHA1")
{
uint8_t sha1_empty[20] = {0xda, 0x39, 0xa3, 0xee, 0x5e, 0x6b, 0x4b, 0x0d, 0x32, 0x55,
@@ -438,6 +440,8 @@ TEST_CASE("SHA1")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/sharedbuffer.cpp b/src/zencore/sharedbuffer.cpp
index 78efb9d42..8dc6d49d8 100644
--- a/src/zencore/sharedbuffer.cpp
+++ b/src/zencore/sharedbuffer.cpp
@@ -152,10 +152,14 @@ sharedbuffer_forcelink()
{
}
+TEST_SUITE_BEGIN("core.sharedbuffer");
+
TEST_CASE("SharedBuffer")
{
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/stream.cpp b/src/zencore/stream.cpp
index a800ce121..de67303a4 100644
--- a/src/zencore/stream.cpp
+++ b/src/zencore/stream.cpp
@@ -79,6 +79,8 @@ BufferReader::Serialize(void* V, int64_t Length)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.stream");
+
TEST_CASE("binary.writer.span")
{
BinaryWriter Writer;
@@ -91,6 +93,8 @@ TEST_CASE("binary.writer.span")
CHECK(memcmp(Result.GetData(), "apa banan", 9) == 0);
}
+TEST_SUITE_END();
+
void
stream_forcelink()
{
diff --git a/src/zencore/string.cpp b/src/zencore/string.cpp
index ab1c7de58..27635a86c 100644
--- a/src/zencore/string.cpp
+++ b/src/zencore/string.cpp
@@ -546,6 +546,8 @@ UrlDecode(std::string_view InUrl)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.string");
+
TEST_CASE("url")
{
using namespace std::literals;
@@ -1222,6 +1224,8 @@ TEST_CASE("string")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/testing.cpp b/src/zencore/testing.cpp
index 6000bd95c..0bae139bd 100644
--- a/src/zencore/testing.cpp
+++ b/src/zencore/testing.cpp
@@ -128,18 +128,24 @@ TestRunner::~TestRunner()
{
}
+void
+TestRunner::SetDefaultSuiteFilter(const char* Pattern)
+{
+ m_Impl->Session.setOption("test-suite", Pattern);
+}
+
int
-TestRunner::ApplyCommandLine(int argc, char const* const* argv)
+TestRunner::ApplyCommandLine(int Argc, char const* const* Argv)
{
- m_Impl->Session.applyCommandLine(argc, argv);
+ m_Impl->Session.applyCommandLine(Argc, Argv);
- for (int i = 1; i < argc; ++i)
+ for (int i = 1; i < Argc; ++i)
{
- if (argv[i] == "--debug"sv)
+ if (Argv[i] == "--debug"sv)
{
zen::logging::SetLogLevel(zen::logging::level::Debug);
}
- else if (argv[i] == "--verbose"sv)
+ else if (Argv[i] == "--verbose"sv)
{
zen::logging::SetLogLevel(zen::logging::level::Trace);
}
@@ -155,20 +161,20 @@ TestRunner::Run()
}
int
-RunTestMain(int argc, char* argv[], [[maybe_unused]] const char* traceName, void (*forceLink)())
+RunTestMain(int Argc, char* Argv[], const char* ExecutableName, void (*ForceLink)())
{
# if ZEN_PLATFORM_WINDOWS
setlocale(LC_ALL, "en_us.UTF8");
# endif
- forceLink();
+ ForceLink();
# if ZEN_PLATFORM_LINUX
zen::IgnoreChildSignals();
# endif
# if ZEN_WITH_TRACE
- zen::TraceInit(traceName);
+ zen::TraceInit(ExecutableName);
zen::TraceOptions TraceCommandlineOptions;
if (GetTraceOptionsFromCommandline(TraceCommandlineOptions))
{
@@ -179,7 +185,30 @@ RunTestMain(int argc, char* argv[], [[maybe_unused]] const char* traceName, void
zen::logging::InitializeLogging();
zen::MaximizeOpenFileCount();
- return ZEN_RUN_TESTS(argc, argv);
+ TestRunner Runner;
+
+ // Derive default suite filter from ExecutableName: "zencore-test" -> "core.*"
+ if (ExecutableName)
+ {
+ std::string_view Name = ExecutableName;
+ if (Name.starts_with("zen"))
+ {
+ Name.remove_prefix(3);
+ }
+ if (Name.ends_with("-test"))
+ {
+ Name.remove_suffix(5);
+ }
+ if (!Name.empty())
+ {
+ std::string Filter(Name);
+ Filter += ".*";
+ Runner.SetDefaultSuiteFilter(Filter.c_str());
+ }
+ }
+
+ Runner.ApplyCommandLine(Argc, Argv);
+ return Runner.Run();
}
} // namespace zen::testing
diff --git a/src/zencore/uid.cpp b/src/zencore/uid.cpp
index d7636f2ad..971683721 100644
--- a/src/zencore/uid.cpp
+++ b/src/zencore/uid.cpp
@@ -156,6 +156,8 @@ Oid::FromMemory(const void* Ptr)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("core.uid");
+
TEST_CASE("Oid")
{
SUBCASE("Basic")
@@ -185,6 +187,8 @@ TEST_CASE("Oid")
}
}
+TEST_SUITE_END();
+
void
uid_forcelink()
{
diff --git a/src/zencore/workthreadpool.cpp b/src/zencore/workthreadpool.cpp
index cb84bbe06..1cb338c66 100644
--- a/src/zencore/workthreadpool.cpp
+++ b/src/zencore/workthreadpool.cpp
@@ -354,6 +354,8 @@ workthreadpool_forcelink()
using namespace std::literals;
+TEST_SUITE_BEGIN("core.workthreadpool");
+
TEST_CASE("threadpool.basic")
{
WorkerThreadPool Threadpool{1};
@@ -368,6 +370,8 @@ TEST_CASE("threadpool.basic")
CHECK_THROWS(FutureThrow.get());
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zencore/zencore.cpp b/src/zencore/zencore.cpp
index 4ff79edc7..d82474705 100644
--- a/src/zencore/zencore.cpp
+++ b/src/zencore/zencore.cpp
@@ -285,7 +285,7 @@ zencore_forcelinktests()
namespace zen {
-TEST_SUITE_BEGIN("core.assert");
+TEST_SUITE_BEGIN("core.zencore");
TEST_CASE("Assert.Default")
{
diff --git a/src/zenhttp/clients/httpclientcommon.cpp b/src/zenhttp/clients/httpclientcommon.cpp
index c016e1c3c..248ae9d70 100644
--- a/src/zenhttp/clients/httpclientcommon.cpp
+++ b/src/zenhttp/clients/httpclientcommon.cpp
@@ -597,6 +597,8 @@ namespace testutil {
} // namespace testutil
+TEST_SUITE_BEGIN("http.httpclientcommon");
+
TEST_CASE("BufferedReadFileStream")
{
ScopedTemporaryDirectory TmpDir;
@@ -787,5 +789,7 @@ TEST_CASE("MultipartBoundaryParser")
}
}
+TEST_SUITE_END();
+
} // namespace zen
#endif
diff --git a/src/zenhttp/httpclient.cpp b/src/zenhttp/httpclient.cpp
index 1cfddb366..f94c58581 100644
--- a/src/zenhttp/httpclient.cpp
+++ b/src/zenhttp/httpclient.cpp
@@ -430,6 +430,8 @@ MeasureLatency(HttpClient& Client, std::string_view Url)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("http.httpclient");
+
TEST_CASE("responseformat")
{
using namespace std::literals;
@@ -839,6 +841,8 @@ TEST_CASE("httpclient.password")
AsioServer->RequestExit();
}
}
+TEST_SUITE_END();
+
void
httpclient_forcelink()
{
diff --git a/src/zenhttp/httpclient_test.cpp b/src/zenhttp/httpclient_test.cpp
index 91b1a3414..52bf149a7 100644
--- a/src/zenhttp/httpclient_test.cpp
+++ b/src/zenhttp/httpclient_test.cpp
@@ -257,6 +257,8 @@ struct TestServerFixture
//////////////////////////////////////////////////////////////////////////
// Tests
+TEST_SUITE_BEGIN("http.httpclient");
+
TEST_CASE("httpclient.verbs")
{
TestServerFixture Fixture;
@@ -1352,6 +1354,8 @@ TEST_CASE("httpclient.transport-faults-post" * doctest::skip())
}
}
+TEST_SUITE_END();
+
void
httpclient_test_forcelink()
{
diff --git a/src/zenhttp/httpserver.cpp b/src/zenhttp/httpserver.cpp
index 3cefa0ad8..2facd8401 100644
--- a/src/zenhttp/httpserver.cpp
+++ b/src/zenhttp/httpserver.cpp
@@ -1322,6 +1322,8 @@ HandlePackageOffers(HttpService& Service, HttpServerRequest& Request, Ref<IHttpP
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("http.httpserver");
+
TEST_CASE("http.common")
{
using namespace std::literals;
@@ -1540,6 +1542,8 @@ TEST_CASE("http.common")
}
}
+TEST_SUITE_END();
+
void
http_forcelink()
{
diff --git a/src/zenhttp/packageformat.cpp b/src/zenhttp/packageformat.cpp
index 9a80d07c8..cbfe4d889 100644
--- a/src/zenhttp/packageformat.cpp
+++ b/src/zenhttp/packageformat.cpp
@@ -805,6 +805,8 @@ CbPackageReader::Finalize()
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("http.packageformat");
+
TEST_CASE("CbPackage.Serialization")
{
// Make a test package
@@ -926,6 +928,8 @@ TEST_CASE("CbPackage.LocalRef")
Reader.Finalize();
}
+TEST_SUITE_END();
+
void
forcelink_packageformat()
{
diff --git a/src/zenhttp/security/passwordsecurity.cpp b/src/zenhttp/security/passwordsecurity.cpp
index a8fb9c3f5..0e3a743c3 100644
--- a/src/zenhttp/security/passwordsecurity.cpp
+++ b/src/zenhttp/security/passwordsecurity.cpp
@@ -76,6 +76,8 @@ PasswordSecurity::IsAllowed(std::string_view InPassword, std::string_view BaseUr
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("http.passwordsecurity");
+
TEST_CASE("passwordsecurity.allowanything")
{
PasswordSecurity Anything({});
@@ -162,6 +164,9 @@ TEST_CASE("passwordsecurity.conflictingunprotecteduris")
"uri #1 ('/free/access')"));
}
}
+
+TEST_SUITE_END();
+
void
passwordsecurity_forcelink()
{
diff --git a/src/zenhttp/servers/wstest.cpp b/src/zenhttp/servers/wstest.cpp
index 95f8587df..fd023c490 100644
--- a/src/zenhttp/servers/wstest.cpp
+++ b/src/zenhttp/servers/wstest.cpp
@@ -41,6 +41,8 @@ using namespace std::literals;
// Unit tests: WsFrameCodec
//
+TEST_SUITE_BEGIN("http.wstest");
+
TEST_CASE("websocket.framecodec")
{
SUBCASE("ComputeAcceptKey RFC 6455 test vector")
@@ -912,6 +914,8 @@ TEST_CASE("websocket.client")
}
}
+TEST_SUITE_END();
+
void
websocket_forcelink()
{
diff --git a/src/zennet/statsdclient.cpp b/src/zennet/statsdclient.cpp
index a0e8cb6ce..8afa2e835 100644
--- a/src/zennet/statsdclient.cpp
+++ b/src/zennet/statsdclient.cpp
@@ -380,6 +380,8 @@ statsd_forcelink()
{
}
+TEST_SUITE_BEGIN("net.statsdclient");
+
TEST_CASE("zennet.statsd.emit")
{
// auto Client = CreateStatsDaemonClient("localhost", 8125);
@@ -459,6 +461,8 @@ TEST_CASE("zennet.statsd.batch")
}
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zenremotestore/builds/buildmanifest.cpp b/src/zenremotestore/builds/buildmanifest.cpp
index 051436e96..738e4b33b 100644
--- a/src/zenremotestore/builds/buildmanifest.cpp
+++ b/src/zenremotestore/builds/buildmanifest.cpp
@@ -97,6 +97,8 @@ ParseBuildManifest(const std::filesystem::path& ManifestPath)
}
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("remotestore.buildmanifest");
+
TEST_CASE("buildmanifest.unstructured")
{
ScopedTemporaryDirectory Root;
@@ -163,6 +165,8 @@ TEST_CASE("buildmanifest.structured")
CHECK_EQ(Manifest.Parts[1].Files[0].generic_string(), "baz.pdb");
}
+TEST_SUITE_END();
+
void
buildmanifest_forcelink()
{
diff --git a/src/zenremotestore/builds/buildsavedstate.cpp b/src/zenremotestore/builds/buildsavedstate.cpp
index 1d1f4605f..0685bf679 100644
--- a/src/zenremotestore/builds/buildsavedstate.cpp
+++ b/src/zenremotestore/builds/buildsavedstate.cpp
@@ -588,6 +588,8 @@ namespace buildsavestate_test {
}
} // namespace buildsavestate_test
+TEST_SUITE_BEGIN("remotestore.buildsavedstate");
+
TEST_CASE("buildsavestate.BuildsSelection")
{
using namespace buildsavestate_test;
@@ -696,6 +698,8 @@ TEST_CASE("buildsavestate.DownloadedPaths")
}
}
+TEST_SUITE_END();
+
#endif // ZEN_WITH_TESTS
} // namespace zen
diff --git a/src/zenremotestore/builds/buildstorageoperations.cpp b/src/zenremotestore/builds/buildstorageoperations.cpp
index 08a896f37..5deb00707 100644
--- a/src/zenremotestore/builds/buildstorageoperations.cpp
+++ b/src/zenremotestore/builds/buildstorageoperations.cpp
@@ -7641,6 +7641,8 @@ namespace buildstorageoperations_testutils {
} // namespace buildstorageoperations_testutils
+TEST_SUITE_BEGIN("remotestore.buildstorageoperations");
+
TEST_CASE("buildstorageoperations.upload.folder")
{
using namespace buildstorageoperations_testutils;
@@ -7933,6 +7935,8 @@ TEST_CASE("buildstorageoperations.upload.multipart")
}
}
+TEST_SUITE_END();
+
void
buildstorageoperations_forcelink()
{
diff --git a/src/zenremotestore/chunking/chunkblock.cpp b/src/zenremotestore/chunking/chunkblock.cpp
index d203e0292..3a4e6011d 100644
--- a/src/zenremotestore/chunking/chunkblock.cpp
+++ b/src/zenremotestore/chunking/chunkblock.cpp
@@ -1047,6 +1047,8 @@ namespace testutils {
} // namespace testutils
+TEST_SUITE_BEGIN("remotestore.chunkblock");
+
TEST_CASE("chunkblock.block")
{
using namespace std::literals;
@@ -1315,6 +1317,8 @@ TEST_CASE("chunkblock.reuseblocks")
}
}
+TEST_SUITE_END();
+
void
chunkblock_forcelink()
{
diff --git a/src/zenremotestore/chunking/chunkedcontent.cpp b/src/zenremotestore/chunking/chunkedcontent.cpp
index 26d179f14..62c927508 100644
--- a/src/zenremotestore/chunking/chunkedcontent.cpp
+++ b/src/zenremotestore/chunking/chunkedcontent.cpp
@@ -1706,6 +1706,8 @@ namespace chunkedcontent_testutils {
} // namespace chunkedcontent_testutils
+TEST_SUITE_BEGIN("remotestore.chunkedcontent");
+
TEST_CASE("chunkedcontent.DeletePathsFromContent")
{
FastRandom BaseRandom;
@@ -1924,6 +1926,8 @@ TEST_CASE("chunkedcontent.ApplyChunkedContentOverlay")
}
}
+TEST_SUITE_END();
+
#endif // ZEN_WITH_TESTS
} // namespace zen
diff --git a/src/zenremotestore/chunking/chunkedfile.cpp b/src/zenremotestore/chunking/chunkedfile.cpp
index 652110605..633ddfd0d 100644
--- a/src/zenremotestore/chunking/chunkedfile.cpp
+++ b/src/zenremotestore/chunking/chunkedfile.cpp
@@ -211,6 +211,8 @@ ZEN_THIRD_PARTY_INCLUDES_END
namespace zen {
# if 0
+TEST_SUITE_BEGIN("remotestore.chunkedfile");
+
TEST_CASE("chunkedfile.findparams")
{
# if 1
@@ -513,6 +515,8 @@ TEST_CASE("chunkedfile.findparams")
// WorkLatch.CountDown();
// WorkLatch.Wait();
}
+
+TEST_SUITE_END();
# endif // 0
void
diff --git a/src/zenremotestore/chunking/chunkingcache.cpp b/src/zenremotestore/chunking/chunkingcache.cpp
index 7f0a26330..f4e1c7837 100644
--- a/src/zenremotestore/chunking/chunkingcache.cpp
+++ b/src/zenremotestore/chunking/chunkingcache.cpp
@@ -461,6 +461,8 @@ namespace chunkingcache_testutils {
}
} // namespace chunkingcache_testutils
+TEST_SUITE_BEGIN("remotestore.chunkingcache");
+
TEST_CASE("chunkingcache.nullchunkingcache")
{
using namespace chunkingcache_testutils;
@@ -617,6 +619,8 @@ TEST_CASE("chunkingcache.diskchunkingcache")
}
}
+TEST_SUITE_END();
+
void
chunkingcache_forcelink()
{
diff --git a/src/zenremotestore/filesystemutils.cpp b/src/zenremotestore/filesystemutils.cpp
index fa1ce6f78..fdb2143d8 100644
--- a/src/zenremotestore/filesystemutils.cpp
+++ b/src/zenremotestore/filesystemutils.cpp
@@ -637,6 +637,8 @@ namespace {
void GenerateFile(const std::filesystem::path& Path) { BasicFile _(Path, BasicFile::Mode::kTruncate); }
} // namespace
+TEST_SUITE_BEGIN("remotestore.filesystemutils");
+
TEST_CASE("filesystemutils.CleanDirectory")
{
ScopedTemporaryDirectory TmpDir;
@@ -692,6 +694,8 @@ TEST_CASE("filesystemutils.CleanDirectory")
CHECK(!IsFile(TmpDir.Path() / "CantDeleteMe2" / "deleteme"));
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zenserver-test/buildstore-tests.cpp b/src/zenserver-test/buildstore-tests.cpp
index 7cd31db06..cf9b10896 100644
--- a/src/zenserver-test/buildstore-tests.cpp
+++ b/src/zenserver-test/buildstore-tests.cpp
@@ -27,6 +27,8 @@ namespace zen::tests {
using namespace std::literals;
+TEST_SUITE_BEGIN("server.buildstore");
+
TEST_CASE("buildstore.blobs")
{
std::filesystem::path SystemRootPath = TestEnv.CreateNewTestDir();
@@ -700,5 +702,7 @@ TEST_CASE("buildstore.cache")
}
}
+TEST_SUITE_END();
+
} // namespace zen::tests
#endif
diff --git a/src/zenserver-test/cache-tests.cpp b/src/zenserver-test/cache-tests.cpp
index 745a89253..334dd04ab 100644
--- a/src/zenserver-test/cache-tests.cpp
+++ b/src/zenserver-test/cache-tests.cpp
@@ -23,6 +23,8 @@
namespace zen::tests {
+TEST_SUITE_BEGIN("server.cache");
+
TEST_CASE("zcache.basic")
{
using namespace std::literals;
@@ -2663,6 +2665,8 @@ TEST_CASE("zcache.batchoperations")
}
}
+TEST_SUITE_END();
+
} // namespace zen::tests
#endif
diff --git a/src/zenserver-test/cacherequests.cpp b/src/zenserver-test/cacherequests.cpp
index 46339aebb..f5302a359 100644
--- a/src/zenserver-test/cacherequests.cpp
+++ b/src/zenserver-test/cacherequests.cpp
@@ -1037,6 +1037,8 @@ namespace zen { namespace cacherequests {
static CompressedBuffer MakeCompressedBuffer(size_t Size) { return CompressedBuffer::Compress(SharedBuffer(IoBuffer(Size))); };
+ TEST_SUITE_BEGIN("server.cacherequests");
+
TEST_CASE("cacherequests.put.cache.records")
{
PutCacheRecordsRequest EmptyRequest;
@@ -1458,5 +1460,7 @@ namespace zen { namespace cacherequests {
"!default!",
Invalid));
}
+
+ TEST_SUITE_END();
#endif
}} // namespace zen::cacherequests
diff --git a/src/zenserver-test/function-tests.cpp b/src/zenserver-test/function-tests.cpp
index 559387fa2..82848c6ad 100644
--- a/src/zenserver-test/function-tests.cpp
+++ b/src/zenserver-test/function-tests.cpp
@@ -16,6 +16,8 @@ namespace zen::tests {
using namespace std::literals;
+TEST_SUITE_BEGIN("server.function");
+
TEST_CASE("function.run")
{
std::filesystem::path TestDir = TestEnv.CreateNewTestDir();
@@ -29,6 +31,8 @@ TEST_CASE("function.run")
Instance.WaitUntilReady();
}
+TEST_SUITE_END();
+
} // namespace zen::tests
#endif
diff --git a/src/zenserver-test/hub-tests.cpp b/src/zenserver-test/hub-tests.cpp
index bd85a5020..11531e30f 100644
--- a/src/zenserver-test/hub-tests.cpp
+++ b/src/zenserver-test/hub-tests.cpp
@@ -24,7 +24,7 @@ namespace zen::tests::hub {
using namespace std::literals;
-TEST_SUITE_BEGIN("hub.lifecycle");
+TEST_SUITE_BEGIN("server.hub");
TEST_CASE("hub.lifecycle.basic")
{
@@ -230,8 +230,6 @@ TEST_CASE("hub.lifecycle.children")
}
}
-TEST_SUITE_END();
-
TEST_CASE("hub.consul.lifecycle" * doctest::skip())
{
zen::consul::ConsulProcess ConsulProc;
@@ -248,5 +246,7 @@ TEST_CASE("hub.consul.lifecycle" * doctest::skip())
ConsulProc.StopConsulAgent();
}
+TEST_SUITE_END();
+
} // namespace zen::tests::hub
#endif
diff --git a/src/zenserver-test/projectstore-tests.cpp b/src/zenserver-test/projectstore-tests.cpp
index 487832405..c73910aaa 100644
--- a/src/zenserver-test/projectstore-tests.cpp
+++ b/src/zenserver-test/projectstore-tests.cpp
@@ -27,6 +27,8 @@ namespace zen::tests {
using namespace std::literals;
+TEST_SUITE_BEGIN("server.projectstore");
+
TEST_CASE("project.basic")
{
using namespace std::literals;
@@ -1053,6 +1055,8 @@ TEST_CASE("project.rpcappendop")
}
}
+TEST_SUITE_END();
+
} // namespace zen::tests
#endif
diff --git a/src/zenserver-test/workspace-tests.cpp b/src/zenserver-test/workspace-tests.cpp
index aedadf0c3..655f28872 100644
--- a/src/zenserver-test/workspace-tests.cpp
+++ b/src/zenserver-test/workspace-tests.cpp
@@ -73,6 +73,8 @@ GenerateFolderContent2(const std::filesystem::path& RootPath)
return Result;
}
+TEST_SUITE_BEGIN("server.workspace");
+
TEST_CASE("workspaces.create")
{
using namespace std::literals;
@@ -537,5 +539,7 @@ TEST_CASE("workspaces.share")
CHECK(Client.Get(fmt::format("/ws/{}", WorkspaceId)).StatusCode == HttpResponseCode::NotFound);
}
+TEST_SUITE_END();
+
} // namespace zen::tests
#endif
diff --git a/src/zenserver-test/zenserver-test.cpp b/src/zenserver-test/zenserver-test.cpp
index c7ce633d3..bd36d731f 100644
--- a/src/zenserver-test/zenserver-test.cpp
+++ b/src/zenserver-test/zenserver-test.cpp
@@ -123,6 +123,7 @@ main(int argc, char** argv)
ZEN_INFO("Running tests...(base dir: '{}')", TestBaseDir);
zen::testing::TestRunner Runner;
+ Runner.SetDefaultSuiteFilter("server.*");
Runner.ApplyCommandLine(argc, argv);
return Runner.Run();
@@ -130,6 +131,8 @@ main(int argc, char** argv)
namespace zen::tests {
+TEST_SUITE_BEGIN("server.zenserver");
+
TEST_CASE("default.single")
{
std::filesystem::path TestDir = TestEnv.CreateNewTestDir();
@@ -336,6 +339,8 @@ TEST_CASE("http.package")
CHECK_EQ(ResponsePackage, TestPackage);
}
+TEST_SUITE_END();
+
# if 0
TEST_CASE("lifetime.owner")
{
diff --git a/src/zenstore/blockstore.cpp b/src/zenstore/blockstore.cpp
index 3ea91ead6..6197c7f24 100644
--- a/src/zenstore/blockstore.cpp
+++ b/src/zenstore/blockstore.cpp
@@ -1556,6 +1556,8 @@ BlockStore::GetMetaData(uint32_t BlockIndex) const
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.blockstore");
+
TEST_CASE("blockstore.blockstoredisklocation")
{
BlockStoreLocation Zero = BlockStoreLocation{.BlockIndex = 0, .Offset = 0, .Size = 0};
@@ -2427,6 +2429,8 @@ TEST_CASE("blockstore.BlockStoreFileAppender")
}
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/buildstore/buildstore.cpp b/src/zenstore/buildstore/buildstore.cpp
index aa37e75fe..49ed7cdd2 100644
--- a/src/zenstore/buildstore/buildstore.cpp
+++ b/src/zenstore/buildstore/buildstore.cpp
@@ -1372,6 +1372,8 @@ BuildStore::LockState(GcCtx& Ctx)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.buildstore");
+
TEST_CASE("BuildStore.Blobs")
{
ScopedTemporaryDirectory _;
@@ -1821,6 +1823,8 @@ TEST_CASE("BuildStore.SizeLimit")
}
}
+TEST_SUITE_END();
+
void
buildstore_forcelink()
{
diff --git a/src/zenstore/cache/cachepolicy.cpp b/src/zenstore/cache/cachepolicy.cpp
index ca8a95ca1..ce6a14bd9 100644
--- a/src/zenstore/cache/cachepolicy.cpp
+++ b/src/zenstore/cache/cachepolicy.cpp
@@ -284,6 +284,9 @@ CacheRecordPolicyBuilder::Build()
}
#if ZEN_WITH_TESTS
+
+TEST_SUITE_BEGIN("store.cachepolicy");
+
TEST_CASE("cachepolicy")
{
SUBCASE("atomics serialization")
@@ -416,6 +419,8 @@ TEST_CASE("cacherecordpolicy")
CHECK(Loaded.IsNull());
}
}
+
+TEST_SUITE_END();
#endif
void
diff --git a/src/zenstore/cache/structuredcachestore.cpp b/src/zenstore/cache/structuredcachestore.cpp
index d8a5755c5..18023e2d6 100644
--- a/src/zenstore/cache/structuredcachestore.cpp
+++ b/src/zenstore/cache/structuredcachestore.cpp
@@ -1395,6 +1395,8 @@ namespace testutils {
} // namespace testutils
+TEST_SUITE_BEGIN("store.structuredcachestore");
+
TEST_CASE("cachestore.store")
{
ScopedTemporaryDirectory TempDir;
@@ -2744,6 +2746,8 @@ TEST_CASE("cachestore.newgc.basics")
}
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/cas.cpp b/src/zenstore/cas.cpp
index 7402d92d3..f80952322 100644
--- a/src/zenstore/cas.cpp
+++ b/src/zenstore/cas.cpp
@@ -512,6 +512,8 @@ CreateCasStore(GcManager& Gc)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.cas");
+
TEST_CASE("CasStore")
{
ScopedTemporaryDirectory TempDir;
@@ -553,6 +555,8 @@ TEST_CASE("CasStore")
CHECK(Lookup2);
}
+TEST_SUITE_END();
+
void
CAS_forcelink()
{
diff --git a/src/zenstore/compactcas.cpp b/src/zenstore/compactcas.cpp
index 5d8f95c9e..21411df59 100644
--- a/src/zenstore/compactcas.cpp
+++ b/src/zenstore/compactcas.cpp
@@ -1348,6 +1348,8 @@ CasContainerStrategy::OpenContainer(bool IsNewStore)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.compactcas");
+
TEST_CASE("compactcas.hex")
{
uint32_t Value;
@@ -2159,6 +2161,8 @@ TEST_CASE("compactcas.iteratechunks")
}
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/filecas.cpp b/src/zenstore/filecas.cpp
index 31b3a68c4..295451818 100644
--- a/src/zenstore/filecas.cpp
+++ b/src/zenstore/filecas.cpp
@@ -1496,6 +1496,8 @@ FileCasStrategy::CreateReferencePruner(GcCtx& Ctx, GcReferenceStoreStats&)
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.filecas");
+
TEST_CASE("cas.chunk.mismatch")
{
}
@@ -1793,6 +1795,8 @@ TEST_CASE("cas.file.move")
# endif
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/gc.cpp b/src/zenstore/gc.cpp
index c3bdc59f0..b3450b805 100644
--- a/src/zenstore/gc.cpp
+++ b/src/zenstore/gc.cpp
@@ -3049,6 +3049,8 @@ GcScheduler::CollectGarbage(const GcClock::TimePoint& CacheExpireTime,
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("store.gc");
+
TEST_CASE("gc.diskusagewindow")
{
DiskUsageWindow Stats;
@@ -3380,6 +3382,8 @@ TEST_CASE("gc.attachmentrange")
CHECK(AttachmentRangeMax == IoHash::Max);
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/projectstore.cpp b/src/zenstore/projectstore.cpp
index 1ab2b317a..217336eec 100644
--- a/src/zenstore/projectstore.cpp
+++ b/src/zenstore/projectstore.cpp
@@ -6802,6 +6802,8 @@ namespace testutils {
} // namespace testutils
+TEST_SUITE_BEGIN("store.projectstore");
+
TEST_CASE("project.opkeys")
{
using namespace std::literals;
@@ -8473,6 +8475,8 @@ TEST_CASE("project.store.iterateoplog")
}
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zenstore/workspaces.cpp b/src/zenstore/workspaces.cpp
index f0f975af4..df3cd31ef 100644
--- a/src/zenstore/workspaces.cpp
+++ b/src/zenstore/workspaces.cpp
@@ -1356,6 +1356,8 @@ namespace {
} // namespace
+TEST_SUITE_BEGIN("store.workspaces");
+
TEST_CASE("workspaces.scanfolder")
{
using namespace std::literals;
@@ -1559,6 +1561,8 @@ TEST_CASE("workspace.share.alias")
CHECK(!WS.GetShareAlias("my_share").has_value());
}
+TEST_SUITE_END();
+
#endif
void
diff --git a/src/zentelemetry/otlptrace.cpp b/src/zentelemetry/otlptrace.cpp
index 6a095cfeb..3888717d5 100644
--- a/src/zentelemetry/otlptrace.cpp
+++ b/src/zentelemetry/otlptrace.cpp
@@ -385,6 +385,8 @@ otlptrace_forcelink()
# if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("telemetry.otlptrace");
+
TEST_CASE("otlp.trace")
{
// Enable OTLP tracing for the duration of this test
@@ -409,6 +411,8 @@ TEST_CASE("otlp.trace")
}
}
+TEST_SUITE_END();
+
# endif
} // namespace zen::otel
diff --git a/src/zentelemetry/stats.cpp b/src/zentelemetry/stats.cpp
index c67fa3c66..fcfcaf45e 100644
--- a/src/zentelemetry/stats.cpp
+++ b/src/zentelemetry/stats.cpp
@@ -660,6 +660,8 @@ EmitSnapshot(std::string_view Tag, const RequestStatsSnapshot& Snapshot, CbObjec
#if ZEN_WITH_TESTS
+TEST_SUITE_BEGIN("telemetry.stats");
+
TEST_CASE("Core.Stats.Histogram")
{
Histogram Histo{258};
@@ -819,6 +821,8 @@ TEST_CASE("Meter")
# endif
}
+TEST_SUITE_END();
+
namespace zen {
void
diff --git a/src/zenutil/config/commandlineoptions.cpp b/src/zenutil/config/commandlineoptions.cpp
index 84c718ecc..2344354b3 100644
--- a/src/zenutil/config/commandlineoptions.cpp
+++ b/src/zenutil/config/commandlineoptions.cpp
@@ -194,6 +194,8 @@ commandlineoptions_forcelink()
{
}
+TEST_SUITE_BEGIN("util.commandlineoptions");
+
TEST_CASE("CommandLine")
{
std::vector<std::string> v1 = ParseCommandLine("c:\\my\\exe.exe \"quoted arg\" \"one\",two,\"three\\\"");
@@ -235,5 +237,7 @@ TEST_CASE("CommandLine")
CHECK_EQ(v3Stripped[5], std::string("--build-part-name=win64"));
}
+TEST_SUITE_END();
+
#endif
} // namespace zen
diff --git a/src/zenutil/rpcrecording.cpp b/src/zenutil/rpcrecording.cpp
index 54f27dee7..28a0091cb 100644
--- a/src/zenutil/rpcrecording.cpp
+++ b/src/zenutil/rpcrecording.cpp
@@ -1119,7 +1119,7 @@ rpcrecord_forcelink()
{
}
-TEST_SUITE_BEGIN("rpc.recording");
+TEST_SUITE_BEGIN("util.rpcrecording");
TEST_CASE("rpc.record")
{
diff --git a/src/zenutil/wildcard.cpp b/src/zenutil/wildcard.cpp
index 7a44c0498..7f2f77780 100644
--- a/src/zenutil/wildcard.cpp
+++ b/src/zenutil/wildcard.cpp
@@ -118,6 +118,8 @@ wildcard_forcelink()
{
}
+TEST_SUITE_BEGIN("util.wildcard");
+
TEST_CASE("Wildcard")
{
CHECK(MatchWildcard("*.*", "normal.txt", true));
@@ -151,5 +153,7 @@ TEST_CASE("Wildcard")
CHECK(MatchWildcard("*.d", "dir/path.d", true));
}
+TEST_SUITE_END();
+
#endif
} // namespace zen