@@ -241,7 +241,7 @@ CATCH_TEST_CASE("Traits", "[traits]")
241
241
CATCH_CHECK (is_class_or_pointer (&f));
242
242
}
243
243
244
- CATCH_SECTION (" Variadic all_same trait " )
244
+ CATCH_SECTION (" Trait: all_same" )
245
245
{
246
246
CATCH_CHECK (fly::all_same_v<int , int >);
247
247
CATCH_CHECK (fly::all_same_v<int , const int >);
@@ -279,7 +279,7 @@ CATCH_TEST_CASE("Traits", "[traits]")
279
279
CATCH_CHECK_FALSE (fly::all_same_v<FooClass, FooClass, std::string>);
280
280
}
281
281
282
- CATCH_SECTION (" Variadic any_same trait " )
282
+ CATCH_SECTION (" Trait: any_same" )
283
283
{
284
284
CATCH_CHECK (fly::any_same_v<int , int >);
285
285
CATCH_CHECK (fly::any_same_v<int , const int >);
@@ -320,6 +320,21 @@ CATCH_TEST_CASE("Traits", "[traits]")
320
320
CATCH_CHECK_FALSE (fly::any_same_v<FooClass, std::string>);
321
321
}
322
322
323
+ CATCH_SECTION (" Trait: size_of_type_is" )
324
+ {
325
+ CATCH_CHECK (fly::size_of_type_is_v<int , sizeof (int )>);
326
+ CATCH_CHECK (fly::size_of_type_is_v<bool , sizeof (bool )>);
327
+ CATCH_CHECK (fly::size_of_type_is_v<FooClass, sizeof (FooClass)>);
328
+
329
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<int , sizeof (int ) - 1 >);
330
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<bool , sizeof (bool ) - 1 >);
331
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<FooClass, sizeof (FooClass) - 1 >);
332
+
333
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<int , sizeof (int ) + 1 >);
334
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<bool , sizeof (bool ) + 1 >);
335
+ CATCH_CHECK_FALSE (fly::size_of_type_is_v<FooClass, sizeof (FooClass) + 1 >);
336
+ }
337
+
323
338
CATCH_SECTION (" Overloaded visitation pattern" )
324
339
{
325
340
using TestVariant = std::variant<int , bool , std::string>;
0 commit comments