C++ mock object library for Boost http://turtle.sourceforge.net
Find a file
Alexander Grund 64fa700f2d
GHA: Fix CMake tests on MinGW
The runners have MinGW installed in 2 locations:
- C:\Program Files\Git\mingw64 uses msvcrt.dll and ucrtbase.dll
- C:\mingw64 uses only (the new) ucrtbase.dll

CMake is using the compiler from C:\mingw64 but at runtime it is still loading the
`libstdc++-6.dll` from the Git-MinGW as it is started from the Git bash.

This causes conflicts with functions compiled into the executable and those used by the runtime.
Most notably the string from `abi::__cxa_demangle` is allocated on a different heap
so freeing it with `free` called from the executable corrupts the heap leading to a SIGSEGV / Exit code 0xc0000374 in the tests.

B2 doesn't suffer from this as it modifies `$PATH` when running each test such that the right libraries are used.
Do it similarly in the GHA-CI config.
2026-07-04 12:37:03 +02:00
.github/workflows GHA: Fix CMake tests on MinGW 2026-07-04 12:37:03 +02:00
doc Remove std::bind1st test for C++17 2025-06-09 14:18:33 +02:00
include/turtle Improve check for std::uncaught_exceptions 2025-06-11 15:16:36 +02:00
scripts Make inspect target explicit 2025-04-30 09:28:18 +02:00
test Workaround file-too-big error on MinGW CI 2025-06-12 09:28:40 +02:00
.clang-format Reduce exposed interface (macros) 2022-01-24 19:03:15 +01:00
.gitattributes Added docker files for gcc and clang development environments 2018-04-08 15:16:49 +02:00
.gitignore Clean and remove build directory 2020-07-16 12:56:23 +02:00
appveyor.yml Appveyor: Split VS 2026 job due to timeout 2026-07-04 12:37:03 +02:00
CMakeLists.txt Added boost source build support 2025-08-15 19:38:06 +02:00
Config.cmake.in Add CMake files 2019-12-28 13:58:24 +01:00
index.html Remove remaining references to Boost.Mock 2020-07-16 13:08:46 +02:00
Jamroot.jam Create documentation on GHA 2020-07-15 22:53:19 +02:00
LICENSE_1_0.txt Changed layout to match boost 2015-03-06 06:41:12 +01:00
README.md Add more prominent link to documentation 2024-09-29 17:54:26 +02:00
version.hpp.cmake Clean and remove build directory 2020-07-16 12:56:23 +02:00

Turtle

Turtle is a C++ mock object library based on Boost with a focus on usability, simplicity and flexibility.

Distributed under the Boost Software License, Version 1.0.

CI Build status Coverage Status

Boost and a C++14 compatible compiler is required.

More information in the documentation.