Mercurial > minori
annotate dep/fmt/test/assert-test.cc @ 377:1b0b8e746d83 default tip
CI/windows: stupid msys2
| author | Paper <paper@tflc.us> | 
|---|---|
| date | Fri, 25 Jul 2025 12:40:25 -0400 (3 months ago) | 
| 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 } | 
