1
0
mirror of https://github.com/CLIUtils/CLI11.git synced 2025-04-30 20:53:52 +00:00
CLI11/tests/catch.hpp
Henry Schreiner 20de8b73bb
tests: fix catch2 3 support (#980)
Is there an easy way to pre-install this in CI or download it (perhaps
in meson)? It's bad that we aren't running in CI with version 3 (but
don't want to drop 2, since we can't drop it until we drop C++11).

---------

Signed-off-by: Henry Schreiner <henryschreineriii@gmail.com>
Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
2024-01-12 17:43:17 -05:00

37 lines
1.3 KiB
C++

// Copyright (c) 2017-2024, University of Cincinnati, developed by Henry Schreiner
// under NSF AWARD 1414736 and by the respective contributors.
// All rights reserved.
//
// SPDX-License-Identifier: BSD-3-Clause
#pragma once
#include <string>
#ifdef CLI11_CATCH3
#include <catch2/catch_approx.hpp>
#include <catch2/catch_template_test_macros.hpp>
#include <catch2/catch_test_macros.hpp>
#include <catch2/generators/catch_generators.hpp>
#include <catch2/generators/catch_generators_range.hpp>
#include <catch2/matchers/catch_matchers_floating_point.hpp>
#include <catch2/matchers/catch_matchers_string.hpp>
using Catch::Approx; // NOLINT(google-global-names-in-headers)
using Catch::Generators::from_range; // NOLINT(google-global-names-in-headers)
using Catch::Matchers::Equals; // NOLINT(google-global-names-in-headers)
using Catch::Matchers::WithinRel; // NOLINT(google-global-names-in-headers)
inline auto Contains(const std::string &x) { return Catch::Matchers::ContainsSubstring(x); }
#else
#include <catch2/catch.hpp>
using Catch::Equals; // NOLINT(google-global-names-in-headers)
using Catch::WithinRel; // NOLINT(google-global-names-in-headers)
using Catch::Matchers::Contains; // NOLINT(google-global-names-in-headers)
#endif