Mercurial > minori
annotate dep/fmt/test/assert-test.cc @ 364:99c961c91809
core: refactor out byte stream into its own file
easy dubs
| author | Paper <paper@paper.us.eu.org> | 
|---|---|
| date | Tue, 16 Jul 2024 21:15:59 -0400 | 
| parents | 1faa72660932 | 
| children | 
| rev | line source | 
|---|---|
| 343 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 1 // Formatting library for C++ - FMT_ASSERT test | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 2 // | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 3 // It is a separate test to minimize the number of EXPECT_DEBUG_DEATH checks | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 4 // which are slow on some platforms. In other tests FMT_ASSERT is made to throw | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 5 // an exception which is much faster and easier to check. | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 6 // | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 7 // Copyright (c) 2012 - present, Victor Zverovich | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 8 // All rights reserved. | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 9 // | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 10 // For the license information refer to format.h. | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 11 | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 12 #include "fmt/core.h" | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 13 #include "gtest/gtest.h" | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 14 | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 15 TEST(assert_test, fail) { | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 16 #if GTEST_HAS_DEATH_TEST | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 17 EXPECT_DEBUG_DEATH(FMT_ASSERT(false, "don't panic!"), "don't panic!"); | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 18 #else | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 19 fmt::print("warning: death tests are not supported\n"); | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 20 #endif | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 21 } | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 22 | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 23 TEST(assert_test, dangling_else) { | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 24 bool test_condition = false; | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 25 bool executed_else = false; | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 26 if (test_condition) | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 27 FMT_ASSERT(true, ""); | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 28 else | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 29 executed_else = true; | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 30 EXPECT_TRUE(executed_else); | 
| 
1faa72660932
*: transfer back to cmake from autotools
 Paper <paper@paper.us.eu.org> parents: diff
changeset | 31 } | 
