summaryrefslogtreecommitdiff
path: root/tests/helpers/ByteOperations.cpp
diff options
context:
space:
mode:
authorIoannis Tzavaras <tzavaras.jannis@gmail.com>2026-03-28 20:28:14 +0200
committerGitHub <noreply@github.com>2026-03-28 18:28:14 +0000
commitff5c6c24302b877d95592c152d63904133020c27 (patch)
treeabd2e0b5016208fd68101c5359755de4f5401bc7 /tests/helpers/ByteOperations.cpp
parent420ee44eedbe153c720ab14d566c417484e3049c (diff)
tests: add unit tests for ByteOperations helpers (#13886)
* tests: add unit tests for ByteOperations helpers * clang-format: fix leading blank line in ByteOperations test
Diffstat (limited to 'tests/helpers/ByteOperations.cpp')
-rw-r--r--tests/helpers/ByteOperations.cpp39
1 files changed, 39 insertions, 0 deletions
diff --git a/tests/helpers/ByteOperations.cpp b/tests/helpers/ByteOperations.cpp
new file mode 100644
index 00000000..3ac5639e
--- /dev/null
+++ b/tests/helpers/ByteOperations.cpp
@@ -0,0 +1,39 @@
+#include <helpers/ByteOperations.hpp>
+
+#include <gtest/gtest.h>
+
+TEST(Helpers, byteOperatorsIntegral) {
+ EXPECT_EQ(1_kB, 1024ULL);
+ EXPECT_EQ(1_MB, 1024ULL * 1024);
+ EXPECT_EQ(1_GB, 1024ULL * 1024 * 1024);
+ EXPECT_EQ(1_TB, 1024ULL * 1024 * 1024 * 1024);
+ EXPECT_EQ(5_MB, 5ULL * 1024 * 1024);
+}
+
+TEST(Helpers, byteOperatorsFloating) {
+ EXPECT_DOUBLE_EQ(1.5_kB, 1.5L * 1024);
+ EXPECT_DOUBLE_EQ(0.5_MB, 0.5L * 1024 * 1024);
+ EXPECT_DOUBLE_EQ(2.5_GB, 2.5L * 1024 * 1024 * 1024);
+ EXPECT_DOUBLE_EQ(0.25_TB, 0.25L * 1024 * 1024 * 1024 * 1024);
+}
+
+TEST(Helpers, byteOperatorsZero) {
+ EXPECT_EQ(0_kB, 0ULL);
+ EXPECT_EQ(0_MB, 0ULL);
+ EXPECT_EQ(0_GB, 0ULL);
+ EXPECT_EQ(0_TB, 0ULL);
+}
+
+TEST(Helpers, byteConversionFunctions) {
+ EXPECT_EQ(kBtoBytes(1ULL), 1024ULL);
+ EXPECT_EQ(MBtoBytes(1ULL), 1024ULL * 1024);
+ EXPECT_EQ(GBtoBytes(1ULL), 1024ULL * 1024 * 1024);
+ EXPECT_EQ(TBtoBytes(1ULL), 1024ULL * 1024 * 1024 * 1024);
+ EXPECT_EQ(kBtoBytes(0ULL), 0ULL);
+}
+
+TEST(Helpers, byteOperatorsChain) {
+ EXPECT_EQ(1_MB, 1024_kB);
+ EXPECT_EQ(1_GB, 1024_MB);
+ EXPECT_EQ(1_TB, 1024_GB);
+}