Commit Graph

14 Commits

Author SHA1 Message Date
senior-eng
fbf5621eae Adds top-level CMake build (T-04): static JTest lib, example, ctest smoke
The project was Makefile-only and non-portable. Adds a top-level
CMakeLists.txt so the framework builds with a standard build system:

* add_library(JTest STATIC ...) over the 13 src/JTest/*.cpp translation
  units. No find_package/FetchContent is needed: a full #include scan of
  include/, src/, examples/ shows the framework depends only on the C++
  standard library plus its own <JTest/...> headers.
* target_include_directories(JTest PUBLIC include) so consumers that link
  JTest (the example, tests) inherit the include path transitively.
* target_compile_features(JTest PUBLIC cxx_std_17) propagates the C++17
  requirement (sources use std::optional).
* Portable (no -arch) build: the Makefile's non-portable -arch flag is not
  carried over (that is T-20's scope).
* enable_testing() + add_test() running tests/smoke.cpp, a genuine self-check
  that exercises the public API and exits non-zero on any failed assertion, so
  ctest is a real pass/fail gate. The demo example remains a build/run target
  but is intentionally excluded from the CTest gate (it contains deliberate
  failing/skipping cases to showcase reporting and always exits 0).

Verified end-to-end (CMake 4.4.3, AppleClang 21, out-of-source build):
configure OK, builds libJTest.a + example + test_smoke, ctest passes
(smoke: Passed, 100%), example demo runs.
2026-09-27 10:05:45 -07:00
2b6c3e59a9 Merge commit 'c4898f2' into develop 2026-09-25 02:12:42 -07:00
f0bfec2634 Adds Project.md: team reference doc on the JTest C++ Jasmine-style testing framework 2026-09-24 12:25:15 -07:00
c4898f20fe Adds Project.md: team reference doc on the JTest C++ Jasmine-style testing framework 2026-09-24 05:22:00 -07:00
75a091f36c Adds .worktrees to gitignore. 2026-09-23 19:56:52 -07:00
19c78a4ac8 Adds MIT License and updates .gitignore from the sample on github. 2023-04-13 15:16:18 -07:00
cdbe51a3cc Finally have something useful. 2023-04-11 23:42:27 -07:00
1a4a19b938 Started implementing execute/describe/it and expect. 2023-04-07 12:05:11 -07:00
2560265fcb Changes from wstring to string expecting UTF-8. 2023-04-07 12:04:12 -07:00
347f311c2e Implemented methods up to execute. 2023-04-03 00:55:03 -07:00
5a9eea1ccb Makes the example more Jasmine-like. 2023-04-02 23:31:16 -07:00
d813d837ea One option for suites/tests. 2023-04-02 17:02:13 -07:00
1dce48f049 Got build/execute/report working. 2023-04-02 16:41:12 -07:00
d676ea7b53 Initial commit. 2023-04-02 16:40:16 -07:00