mirror of
https://github.com/DarkflameUniverse/DarkflameServer.git
synced 2024-12-23 14:03:34 +00:00
122 lines
3.3 KiB
C++
122 lines
3.3 KiB
C++
|
#include <gtest/gtest.h>
|
||
|
|
||
|
#include "dCommonVars.h"
|
||
|
|
||
|
TEST(LUWString33Test, SerializeWriteTestOld) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 33; i++) testString += u'ü';
|
||
|
for (const auto& c : testString) bitStream.Write(c);
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
while (bitStream.Read(c)) result += c;
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeWriteTestOldPartial) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 15; i++) testString += u'ü';
|
||
|
for (const auto& c : testString) bitStream.Write(c);
|
||
|
for (int i = 0; i < 18; i++) bitStream.Write<char16_t>(0);
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
int nulls = 18;
|
||
|
while (bitStream.Read(c)){
|
||
|
if (c == 0) {
|
||
|
nulls--;
|
||
|
continue;
|
||
|
}
|
||
|
result += c;
|
||
|
}
|
||
|
ASSERT_EQ(nulls, 0);
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeWriteTestNew) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 33; i++) testString += u'ü';
|
||
|
bitStream.Write(LUWString(testString, 33));
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
while (bitStream.Read(c)) result += c;
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeWriteTestNewPartial) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 15; i++) testString += u'ü';
|
||
|
bitStream.Write(LUWString(testString, 33));
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
int nulls = 18;
|
||
|
while (bitStream.Read(c)){
|
||
|
if (c == 0) {
|
||
|
nulls--;
|
||
|
continue;
|
||
|
}
|
||
|
result += c;
|
||
|
}
|
||
|
ASSERT_EQ(nulls, 0);
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeReadTestOld) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 33; i++) testString += u'ü';
|
||
|
for (const auto& c : testString) bitStream.Write(c);
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
while (bitStream.Read(c)) result += c;
|
||
|
ASSERT_EQ(bitStream.GetNumberOfUnreadBits(), 0);
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeReadTestOldPartial) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 15; i++) testString += u'ü';
|
||
|
for (const auto& c : testString) bitStream.Write(c);
|
||
|
for (int i = 0; i < 18; i++) bitStream.Write<char16_t>(0);
|
||
|
std::u16string result;
|
||
|
char16_t c;
|
||
|
int nulls = 18;
|
||
|
while (bitStream.Read(c)){
|
||
|
if (c == 0) {
|
||
|
nulls--;
|
||
|
continue;
|
||
|
}
|
||
|
result += c;
|
||
|
}
|
||
|
ASSERT_EQ(bitStream.GetNumberOfUnreadBits(), 0);
|
||
|
ASSERT_EQ(nulls, 0);
|
||
|
ASSERT_EQ(result, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeReadTestNew) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 33; i++) testString += u'ü';
|
||
|
bitStream.Write(LUWString(testString, 33));
|
||
|
LUWString result(33);
|
||
|
ASSERT_EQ(result.size, 33);
|
||
|
ASSERT_TRUE(bitStream.Read(result));
|
||
|
ASSERT_EQ(bitStream.GetNumberOfUnreadBits(), 0);
|
||
|
ASSERT_EQ(result.string, testString);
|
||
|
}
|
||
|
|
||
|
TEST(LUWString33Test, SerializeReadTestNewPartial) {
|
||
|
CBITSTREAM;
|
||
|
std::u16string testString;
|
||
|
for (int i = 0; i < 15; i++) testString += u'ü';
|
||
|
bitStream.Write(LUWString(testString, 33));
|
||
|
LUWString result(33);
|
||
|
ASSERT_EQ(result.size, 33);
|
||
|
ASSERT_TRUE(bitStream.Read(result));
|
||
|
ASSERT_EQ(bitStream.GetNumberOfUnreadBits(), 0);
|
||
|
ASSERT_EQ(result.string, testString);
|
||
|
}
|