aboutsummaryrefslogtreecommitdiff
path: root/libk/types
diff options
context:
space:
mode:
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);