mirror of
https://github.com/pocoproject/poco.git
synced 2025-10-29 04:17:55 +01:00
GH #290: Unicode support
This commit is contained in:
@@ -175,7 +175,7 @@ void TextConverterTest::testLatin1toUTF8()
|
||||
int errors = converter.convert(latin1Text, result0);
|
||||
assert (result0 == utf8Text);
|
||||
assert (errors == 0);
|
||||
assertEqual (result0.size(), 7);
|
||||
assertEqual((long) result0.size(), 7);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latin1Chars, 6, result1);
|
||||
@@ -200,13 +200,13 @@ void TextConverterTest::testLatin2toUTF8()
|
||||
int errors = converter.convert(latinText, result0);
|
||||
assertEqual (result0, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result0.size(), 49);
|
||||
assertEqual((long) result0.size(), 49);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latinChars, 25, result1);
|
||||
assertEqual (result1, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result1.size(), 49);
|
||||
assertEqual((long) result1.size(), 49);
|
||||
}
|
||||
|
||||
|
||||
@@ -226,13 +226,13 @@ void TextConverterTest::testLatin9toUTF8()
|
||||
int errors = converter.convert(latinText, result0);
|
||||
assertEqual (result0, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result0.size(), 43);
|
||||
assertEqual((long) result0.size(), 43);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latinChars, 25, result1);
|
||||
assertEqual (result1, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result1.size(), 43);
|
||||
assertEqual(result1, utf8Text);
|
||||
assertEqual((long) errors, 0);
|
||||
assertEqual((long) result1.size(), 43);
|
||||
}
|
||||
|
||||
|
||||
@@ -252,13 +252,13 @@ void TextConverterTest::testCP1250toUTF8()
|
||||
int errors = converter.convert(latinText, result0);
|
||||
assertEqual (result0, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result0.size(), 49);
|
||||
assertEqual((long) result0.size(), 49);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latinChars, 25, result1);
|
||||
assertEqual (result1, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result1.size(), 49);
|
||||
assertEqual(result1, utf8Text);
|
||||
assertEqual((long) errors, 0);
|
||||
assertEqual((long) result1.size(), 49);
|
||||
}
|
||||
|
||||
|
||||
@@ -277,13 +277,13 @@ void TextConverterTest::testCP1251toUTF8()
|
||||
int errors = converter.convert(latinText, result0);
|
||||
assertEqual (result0, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result0.size(), 62);
|
||||
assertEqual((long) result0.size(), 62);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latinChars, 31, result1);
|
||||
assertEqual (result1, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result1.size(), 62);
|
||||
assertEqual((long) result1.size(), 62);
|
||||
}
|
||||
|
||||
|
||||
@@ -301,15 +301,15 @@ void TextConverterTest::testCP1252toUTF8()
|
||||
|
||||
std::string result0;
|
||||
int errors = converter.convert(latinText, result0);
|
||||
assertEqual (result0, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result0.size(), 43);
|
||||
assertEqual(result0, utf8Text);
|
||||
assertEqual(errors, 0);
|
||||
assertEqual((long) result0.size(), 43);
|
||||
|
||||
std::string result1;
|
||||
errors = converter.convert(latinChars, 25, result1);
|
||||
assertEqual (result1, utf8Text);
|
||||
assertEqual (errors, 0);
|
||||
assertEqual (result1.size(), 43);
|
||||
assertEqual(result1, utf8Text);
|
||||
assertEqual(errors, 0);
|
||||
assertEqual((long) result1.size(), 43);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
#include "Poco/Foundation.h"
|
||||
#include "CppUnit/TestCase.h"
|
||||
#include "Poco/UnicodeConverter.h"
|
||||
#include "Poco/UTFString.h"
|
||||
#include <cstring>
|
||||
|
||||
|
||||
@@ -46,11 +47,16 @@ private:
|
||||
// Convert from UTF-8 to wide
|
||||
T wtext, wtext2, wtext3;
|
||||
Poco::UnicodeConverter::convert(text, wtext);
|
||||
if (sizeof(T) == 2)
|
||||
assert(Poco::utfStringLength(wtext.data()) == 8);
|
||||
else if (sizeof(T) == 4)
|
||||
assert(Poco::utfStringLength(wtext.data()) == 5);
|
||||
Poco::UnicodeConverter::convert((const char*) supp, strlen((const char*) supp), wtext2);
|
||||
Poco::UnicodeConverter::convert((const char*) supp, wtext3);
|
||||
Poco::UnicodeConverter::convert((const char*)supp, wtext3);
|
||||
assert(wtext == wtext2);
|
||||
assert(wtext == wtext3);
|
||||
|
||||
std::string text2, text3, text4;
|
||||
|
||||
assert (text != text2);
|
||||
assert (text != text3);
|
||||
assert (text != text4);
|
||||
|
||||
@@ -1115,7 +1115,7 @@ void VarTest::testString()
|
||||
Poco::UInt64 s9;
|
||||
float s10;
|
||||
double s11;
|
||||
bool s12;
|
||||
bool s12 = false;
|
||||
char s13;
|
||||
a1.convert(s1);
|
||||
a1.convert(s2);
|
||||
|
||||
Reference in New Issue
Block a user