Mercurial > minori
view dep/fmt/test/test-assert.h @ 362:433eeaca3baf
CI/linux: revert change to linuxdeployqt; add qt plugin
turns out I'm stupid and linuxdeployqt is insanely broken
author | Paper <paper@paper.us.eu.org> |
---|---|
date | Mon, 15 Jul 2024 01:28:57 -0400 |
parents | 1faa72660932 |
children |
line wrap: on
line source
// Formatting library for C++ - test version of FMT_ASSERT // // Copyright (c) 2012 - present, Victor Zverovich // All rights reserved. // // For the license information refer to format.h. #ifndef FMT_TEST_ASSERT_H_ #define FMT_TEST_ASSERT_H_ #include <stdexcept> void throw_assertion_failure(const char* message); #define FMT_ASSERT(condition, message) \ if (!(condition)) throw_assertion_failure(message); #include "gtest/gtest.h" class assertion_failure : public std::logic_error { public: explicit assertion_failure(const char* message) : std::logic_error(message) {} private: virtual void avoid_weak_vtable(); }; void assertion_failure::avoid_weak_vtable() {} // We use a separate function (rather than throw directly from FMT_ASSERT) to // avoid GCC's -Wterminate warning when FMT_ASSERT is used in a destructor. inline void throw_assertion_failure(const char* message) { throw assertion_failure(message); } // Expects an assertion failure. #define EXPECT_ASSERT(stmt, message) \ FMT_TEST_THROW_(stmt, assertion_failure, message, GTEST_NONFATAL_FAILURE_) #endif // FMT_TEST_ASSERT_H_