aboutsummaryrefslogtreecommitdiff
path: root/libk/types
diff options
context:
space:
mode:
authorAqua-sama <aqua@iserlohn-fortress.net>2021-02-06 17:32:40 +0200
committerAqua-sama <aqua@iserlohn-fortress.net>2021-02-06 18:31:10 +0200
commit13e1e4515746fe65b6c50cfbc42f00e29fd56599 (patch)
tree22722c729ad028dea612c5c07a16ec6f52ca63c0 /libk/types
parentAdd IntegerView (diff)
downloadkernel.cpp-13e1e4515746fe65b6c50cfbc42f00e29fd56599.tar.xz
libk: add some tests
- merge types.h and type_traits.h
Diffstat (limited to 'libk/types')
-rw-r--r--libk/types/test.cc29
1 files changed, 29 insertions, 0 deletions
diff --git a/libk/types/test.cc b/libk/types/test.cc
new file mode 100644
index 0000000..f93d883
--- /dev/null
+++ b/libk/types/test.cc
@@ -0,0 +1,29 @@
+#include <types.h>
+
+// types
+static_assert(sizeof(size_t) >= 2);
+
+static_assert(sizeof(uint8_t) == 1);
+static_assert(sizeof(uint16_t) == 2);
+static_assert(sizeof(uint32_t) == 4);
+static_assert(sizeof(uint64_t) == 8);
+
+static_assert(sizeof(int8_t) == 1);
+static_assert(sizeof(int16_t) == 2);
+static_assert(sizeof(int32_t) == 4);
+static_assert(sizeof(int64_t) == 8);
+
+// is_same
+static_assert(is_same<int, int>() == true);
+static_assert(is_same<int, unsigned int>() == false);
+
+// is_unsigned
+static_assert(is_unsigned<uint8_t>() == true);
+static_assert(is_unsigned<uint16_t>() == true);
+static_assert(is_unsigned<uint32_t>() == true);
+static_assert(is_unsigned<uint64_t>() == true);
+
+static_assert(is_unsigned<int8_t>() == false);
+static_assert(is_unsigned<int16_t>() == false);
+static_assert(is_unsigned<int32_t>() == false);
+static_assert(is_unsigned<int64_t>() == false);