doctest/2.4.6+2

[full]

The fastest feature-rich C++11/14/17/20 single-header testing framework for unit tests and TDD

doctest is a new C++ testing framework but is by far the fastest both in compile times (by orders of magnitude) and runtime compared to other feature-rich alternatives. It brings the ability of compiled languages such as D / Rust / Nim to have tests written directly in the production code thanks to a fast, transparent and flexible test runner with a clean interface.

Standard License download CII Best Practices Language grade: C/C++ Join the chat at https://gitter.im/onqtam/doctest Try it online

The framework is and will stay free but needs your support to sustain its development. There are lots of new features and maintenance to do. If you work for a company using doctest or have the means to do so, please consider financial support. Monthly donations via Patreon and one-offs via PayPal.

version 2.4.6+2
license MIT
repository https://pkg.cppget.org/1/stable
download doctest-2.4.6+2.tar.gz
sha256 8795e3495430f05c770ffa362a0efa9216cd41669bcab3d68153e440fde3fd41
project doctest
url github.com/onqtam/doctest
package-url github.com/build2-packaging/doctest/
package-email lyrahgames@mailbox.org

Requires (1)

c++11 | c++14 | c++17 | c++20

Builds

toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew-static_O3 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:46:10 UTC (01 19:13:24 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew-O3 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:46:08 UTC (01 19:13:26 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-gcc_11.2_homebrew / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:45:14 UTC (01 19:14:19 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0-static_O3 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:45:14 UTC (01 19:14:20 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0-O3 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:44:21 UTC (01 19:15:13 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_13.0 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:44:15 UTC (01 19:15:19 days ago)
result success | log | rebuild
toolchain public-0.14.0
config macos_11-clang_12.0 / x86_64-apple-darwin20.5.0
timestamp 2021-10-25 11:43:24 UTC (01 19:16:10 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11_lld / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:35:46 UTC (01 19:23:48 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:35:05 UTC (01 19:24:29 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:34:59 UTC (01 19:24:34 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_13.0_llvm_msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:34:20 UTC (01 19:25:14 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++-static_O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:15:51 UTC (01 19:43:43 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++-O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:15:41 UTC (01 19:43:53 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0_libc++ / x86_64-linux-gnu
timestamp 2021-10-25 11:15:27 UTC (01 19:44:07 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0-static_O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:15:18 UTC (01 19:44:15 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0-O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:15:06 UTC (01 19:44:28 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_11-clang_13.0 / x86_64-linux-gnu
timestamp 2021-10-25 11:14:40 UTC (01 19:44:53 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64-O2 / x86_64-w64-mingw32
timestamp 2021-10-25 11:10:35 UTC (01 19:48:58 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64-static_O2 / x86_64-w64-mingw32
timestamp 2021-10-25 11:10:23 UTC (01 19:49:11 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-gcc_10.2_mingw_w64 / x86_64-w64-mingw32
timestamp 2021-10-25 11:09:53 UTC (01 19:49:41 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11-static_O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:09:32 UTC (01 19:50:02 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10_devmode-msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:08:59 UTC (01 19:50:35 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.9 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:08:50 UTC (01 19:50:44 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11-O2 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:08:49 UTC (01 19:50:44 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:08:45 UTC (01 19:50:49 days ago)
result success | log | rebuild
toolchain public-0.14.0
config windows_10-clang_12.0_msvc_msvc_16.11 / x86_64-microsoft-win32-msvc14.2
timestamp 2021-10-25 11:08:23 UTC (01 19:51:11 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-static_O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:07:40 UTC (01 19:51:53 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0-static_O3 / x86_64-freebsd13.0
timestamp 2021-10-25 11:07:22 UTC (01 19:52:11 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-ndebug_O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:07:08 UTC (01 19:52:25 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2-O3 / x86_64-linux-gnu
timestamp 2021-10-25 11:06:47 UTC (01 19:52:46 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_11.2 / x86_64-linux-gnu
timestamp 2021-10-25 11:06:28 UTC (01 19:53:05 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_12.0_libc++ / x86_64-linux-gnu
timestamp 2021-10-25 11:06:11 UTC (01 19:53:23 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0-O3 / x86_64-freebsd13.0
timestamp 2021-10-25 11:06:04 UTC (01 19:53:29 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_13-clang_11.0 / x86_64-freebsd13.0
timestamp 2021-10-25 11:05:51 UTC (01 19:53:42 days ago)
result success | log | rebuild
toolchain public-0.14.0
config freebsd_12-clang_10.0 / x86_64-freebsd12.2
timestamp 2021-10-25 11:05:50 UTC (01 19:53:43 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-clang_12.0 / x86_64-linux-gnu
timestamp 2021-10-25 11:05:29 UTC (01 19:54:05 days ago)
result success | log | rebuild
toolchain public-0.14.0
config linux_debian_10-gcc_10.2 / x86_64-linux-gnu
timestamp 2021-10-25 11:04:31 UTC (01 19:55:03 days ago)
result success | log | rebuild

Changes

# Change Log

## [2.4.6](https://github.com/onqtam/doctest/tree/2.4.6) (2021-03-22)
[Full Changelog](https://github.com/onqtam/doctest/compare/2.4.5...2.4.6)

**Fixed bugs:**

- REQUIRE does not compile when operator== in different namespace [\#443](https://github.com/onqtam/doctest/issues/443)
- Using templated operator== inside TEST\_CASE changes deduced types of forwarding references [\#399](https://github.com/onqtam/doctest/issues/399)

**Closed issues:**

- CMake doesn't link package [\#483](https://github.com/onqtam/doctest/issues/483)
- Assertions are slow when running on Windows with a debugger attached [\#481](https://github.com/onqtam/doctest/issues/481)
- Get list of registered test-case names [\#479](https://github.com/onqtam/doctest/issues/479)
- Can't compile with glibc master \(future 2.34\): SIGSTKSZ is no longer a constant [\#473](https://github.com/onqtam/doctest/issues/473)
- How to use Doctest with Github Actions [\#472](https://github.com/onqtam/doctest/issues/472)
- Link error \(multiple definition...\) in simple project [\#470](https://github.com/onqtam/doctest/issues/470)
- INFO does not compile when used like a function call [\#469](https://github.com/onqtam/doctest/issues/469)
- std::uncaught\_exceptions is only available if compiling for macOS 10.12 or above [\#466](https://github.com/onqtam/doctest/issues/466)
- Compile failure with WinRT on 2.4.5 [\#465](https://github.com/onqtam/doctest/issues/465)

**Merged pull requests:**

- Improve speed with attached debugger \(Windows\) [\#482](https://github.com/onqtam/doctest/pull/482) ([pgroke](https://github.com/pgroke))
- Convert to bool by casting, rather than double negation [\#480](https://github.com/onqtam/doctest/pull/480) ([kitegi](https://github.com/kitegi))
- Fix compile error when targeting macOS version earlier and macOS 10.12 [\#478](https://github.com/onqtam/doctest/pull/478) ([SamWindell](https://github.com/SamWindell))
- Fix MSVC linter warning about uninitialized TestSuite variables [\#471](https://github.com/onqtam/doctest/pull/471) ([Reedbeta](https://github.com/Reedbeta))
- REQUIRE does not compile when operator== in different namespace \#443 . [\#468](https://github.com/onqtam/doctest/pull/468) ([navinp0304](https://github.com/navinp0304))
- Automatically add TEST\_SUITE labels to discovered tests [\#464](https://github.com/onqtam/doctest/pull/464) ([shivupa](https://github.com/shivupa))

## [2.4.5](https://github.com/onqtam/doctest/tree/2.4.5) (2021-02-02)
[Full Changelog](https://github.com/onqtam/doctest/compare/2.4.4...2.4.5)

**Closed issues:**

- Stack buffer overflow in `String` constructor [\#460](https://github.com/onqtam/doctest/issues/460)
- Surpress warnings from clang-tidy [\#459](https://github.com/onqtam/doctest/issues/459)
- compilation issue in MSVC when defining DOCTEST\_THREAD\_LOCAL to static [\#458](https://github.com/onqtam/doctest/issues/458)
- nvcc compiler warning; doctest.h\(4138\): warning : expression has no effect [\#454](https://github.com/onqtam/doctest/issues/454)
- Use of std::atomic can slow down multithreaded tests [\#452](https://github.com/onqtam/doctest/issues/452)

**Merged pull requests:**

- Fix compilation on case-sensitive filesystems [\#463](https://github.com/onqtam/doctest/pull/463) ([jhasse](https://github.com/jhasse))
- Use function-like macros for prefixless macro names [\#462](https://github.com/onqtam/doctest/pull/462) ([tbleher](https://github.com/tbleher))
- Implement a multi lane atomic for assertion counts [\#453](https://github.com/onqtam/doctest/pull/453) ([martinus](https://github.com/martinus))

## [2.4.4](https://github.com/onqtam/doctest/tree/2.4.4) (2020-12-25)
[Full Changelog](https://github.com/onqtam/doctest/compare/2.4.3...2.4.4)

**Closed issues:**

- 2.4.2: build fails [\#450](https://github.com/onqtam/doctest/issues/450)
- combine the same tests for different build configurations from multiple shared objects without having symbol clashes [\#436](https://github.com/onqtam/doctest/issues/436)
- Issue with GitHub Security Scanning: gmtime [\#423](https://github.com/onqtam/doctest/issues/423)

## [2.4.3](https://github.com/onqtam/doctest/tree/2.4.3) (2020-12-16)
[Full Changelog](https://github.com/onqtam/doctest/compare/2.4.2...2.4.3)

## [2.4.2](https://github.com/onqtam/doctest/tree/2.4.2) (2020-12-15)
[Full Changelog](https://github.com/onqtam/doctest/compare/2.4.1...2.4.2)

**Closed issues:**

- DOCTEST\_CHECK\_THROWS\_WITH\_AS fails to work with dependant exception type [\#447](https://github.com/onqtam/doctest/issues/447)
- MSVC warnings: narrowing conversion, signed/unsigned mismatch [\#446](https://github.com/onqtam/doctest/issues/446)
-  log contexts for failures in JUnit reporter [\#441](https://github.com/onqtam/doctest/issues/441)
- MinGW "'mutex' in namespace 'std' does not name a type" error. [\#438](https://github.com/onqtam/doctest/issues/438)
- Test runner thread initialization [\#435](https://github.com/onqtam/doctest/issues/435)
- PLATFORM... More