# ZTestSuite Unit test suite covering the libsst and ZUtil libraries. ## Running ```sh make ztestsuite ./ZTestSuite.bin # interactive menu ./ZTestSuite.bin -n # run all tests non-interactively ./ZTestSuite.bin -r 5 # run test block #5 ./ZTestSuite.bin -c # print total test count ``` ## Test framework Custom lightweight framework (`ZUnitTest.hpp`): ```cpp static const char* testExample() { TASSERT(1 + 1 == 2, "math is broken"); return ZTEST_SUCCESS; } ``` Tests return an error string on failure or `ZTEST_SUCCESS` (empty string) on pass. ## Coverage (48 test blocks, 60 test files) **Math** -- Vec2/3/4 and Mat22/33/44 in float/double/int/unsigned variants, geometry, transforms, safe arithmetic, endianness **Containers** -- ZArray, ZList, ZHashMap, ZRingBuffer, ZBasicString (with algorithm suites) **Memory** -- ZAlloc, ZAllocWindow, ZSlabAllocator, ZReferenceCounter, ZSmartPointer, ZWeakPointer **I/O** -- JSON, XML, INI readers/writers, binary data writer **Concurrency** -- threads, task streams **Utilities** -- assertions, ZName, ZRegistry, random generation, simplex noise