Exemplo n.º 1
0
//
// ASCII.
//
void Utf8SeqSuite::testCtor03()
{
    Utf8Seq seq("abc123", 6);
    bool ok = ((seq.byteSize() == 6) && (seq.numChars() == 6) && seq.isAscii());
    CPPUNIT_ASSERT(ok);

    ok = (memcmp(seq.raw(), "abc123", 6) == 0);
    CPPUNIT_ASSERT(ok);

    seq += '4';
    ok = ((seq.byteSize() == 7) && (seq.numChars() == 7));
    CPPUNIT_ASSERT(ok);

    ok = (memcmp(seq.raw(), "abc1234", 7) == 0);
    CPPUNIT_ASSERT(ok);

    MyString str;
    size_t length = 7;
    str.reset("abc1234", length);
    str.addNull();
    ok = (memcmp(str.raw(), "abc1234", 7 + 1) == 0);
    CPPUNIT_ASSERT(ok);

    str.addNullIfNone();
    str.rmNull();
    str.addNullIfNone();
    ok = (memcmp(str.raw(), "abc1234", 7 + 1) == 0);
    CPPUNIT_ASSERT(ok);
}
Exemplo n.º 2
0
void Utf8SeqSuite::testSeek00()
{
    MyString str;
    size_t length = 7;
    str.reset("abc1234", length);
    const utf8_t* p0 = str.raw();
    const utf8_t* p = str.seek(3);
    bool ok = (p == (p0 + 3));
    CPPUNIT_ASSERT(ok);
}
	//convert int to MyString noexcept
	MyString intToMyString(const int& number)
	{
		char buffer[20] = {'\0'};
		size_t length = sprintf_s(buffer, sizeof(buffer), "%d", number);
		MyString res;
		res.reset(length);
		for (size_t i = 0; i < length; i++)
		{
			res[i] = buffer[i];
		}
		return res;
	}