basedOpinionated utility library |
git clone git://git.dimitrijedobrota.com/based.git |
Log | Files | Refs | README | LICENSE | HACKING | CONTRIBUTING | CODE_OF_CONDUCT | BUILDING |
limits.cpp (1243B)
0 #define CATCH_CONFIG_RUNTIME_STATIC_REQUIRE
2 #include <catch2/catch_test_macros.hpp>
4 #include "based/types/types.hpp"
6 using based::limits;
8 TEST_CASE("unsigned", "[types/literals]")
9 {
10 STATIC_REQUIRE(limits<based::u8>::min.value == 0ULL);
11 STATIC_REQUIRE(limits<based::u16>::min.value == 0ULL);
12 STATIC_REQUIRE(limits<based::u32>::min.value == 0ULL);
13 STATIC_REQUIRE(limits<based::u64>::min.value == 0ULL);
15 STATIC_REQUIRE(limits<based::u8>::max.value == 255ULL);
16 STATIC_REQUIRE(limits<based::u16>::max.value == 65535ULL);
17 STATIC_REQUIRE(limits<based::u32>::max.value == 4294967295ULL);
18 STATIC_REQUIRE(limits<based::u64>::max.value == 18446744073709551615ULL);
19 }
21 TEST_CASE("signed", "[types/literals]")
22 {
23 STATIC_REQUIRE(limits<based::i8>::min.value == -128LL);
24 STATIC_REQUIRE(limits<based::i16>::min.value == -32768LL);
25 STATIC_REQUIRE(limits<based::i32>::min.value == -2147483648LL);
26 STATIC_REQUIRE(limits<based::i64>::min.value == -9223372036854775807LL - 1);
28 STATIC_REQUIRE(limits<based::i8>::max.value == 127LL);
29 STATIC_REQUIRE(limits<based::i16>::max.value == 32767LL);
30 STATIC_REQUIRE(limits<based::i32>::max.value == 2147483647LL);
31 STATIC_REQUIRE(limits<based::i64>::max.value == 9223372036854775807LL);
32 }