Веб-сайт самохостера Lotigara

summaryrefslogtreecommitdiff
path: root/source/test/vlq_test.cpp
diff options
context:
space:
mode:
authorKae <80987908+Novaenia@users.noreply.github.com>2023-06-20 14:33:09 +1000
committerKae <80987908+Novaenia@users.noreply.github.com>2023-06-20 14:33:09 +1000
commit6352e8e3196f78388b6c771073f9e03eaa612673 (patch)
treee23772f79a7fbc41bc9108951e9e136857484bf4 /source/test/vlq_test.cpp
parent6741a057e5639280d85d0f88ba26f000baa58f61 (diff)
everything everywhere
all at once
Diffstat (limited to 'source/test/vlq_test.cpp')
-rw-r--r--source/test/vlq_test.cpp30
1 files changed, 30 insertions, 0 deletions
diff --git a/source/test/vlq_test.cpp b/source/test/vlq_test.cpp
new file mode 100644
index 0000000..5681c14
--- /dev/null
+++ b/source/test/vlq_test.cpp
@@ -0,0 +1,30 @@
+#include "StarVlqEncoding.hpp"
+
+#include "gtest/gtest.h"
+
+using namespace Star;
+
+TEST(VlqTest, All) {
+ char buffer[10];
+ int64_t result;
+
+ EXPECT_EQ(writeVlqI(-1, buffer), 1u);
+ EXPECT_EQ(readVlqI(result, buffer), 1u);
+ EXPECT_EQ(result, -1);
+
+ EXPECT_EQ(writeVlqI(-65, buffer), 2u);
+ EXPECT_EQ(readVlqI(result, buffer), 2u);
+ EXPECT_EQ(result, -65);
+
+ EXPECT_EQ(writeVlqI(-64, buffer), 1u);
+ EXPECT_EQ(readVlqI(result, buffer), 1u);
+ EXPECT_EQ(result, -64);
+
+ EXPECT_EQ(writeVlqI((int64_t)1 << 63, buffer), 10u);
+ EXPECT_EQ(readVlqI(result, buffer), 10u);
+ EXPECT_EQ(result, (int64_t)1 << 63);
+
+ EXPECT_EQ(writeVlqI(0, buffer), 1u);
+ EXPECT_EQ(readVlqI(result, buffer), 1u);
+ EXPECT_EQ(result, 0);
+}