More tests (Escaping, Inserting)
git-svn-id: file:///srv/svn/repos/haiku/trunk/current@1406 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
@@ -31,6 +31,12 @@ StringCaseTest::PerformTest(void)
|
|||||||
string->Capitalize();
|
string->Capitalize();
|
||||||
CPPUNIT_ASSERT(strcmp(string->String(), "134this is a sentence") == 0);
|
CPPUNIT_ASSERT(strcmp(string->String(), "134this is a sentence") == 0);
|
||||||
delete string;
|
delete string;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
string = new BString;
|
||||||
|
string->Capitalize();
|
||||||
|
CPPUNIT_ASSERT(strcmp(string->String(), "") == 0);
|
||||||
|
delete string;
|
||||||
|
|
||||||
//ToLower
|
//ToLower
|
||||||
NextSubTest();
|
NextSubTest();
|
||||||
@@ -39,6 +45,12 @@ StringCaseTest::PerformTest(void)
|
|||||||
CPPUNIT_ASSERT(strcmp(string->String(), "1a2b3c4d5e6f7g") == 0);
|
CPPUNIT_ASSERT(strcmp(string->String(), "1a2b3c4d5e6f7g") == 0);
|
||||||
delete string;
|
delete string;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
string = new BString;
|
||||||
|
string->ToLower();
|
||||||
|
CPPUNIT_ASSERT(strcmp(string->String(), "") == 0);
|
||||||
|
delete string;
|
||||||
|
|
||||||
//ToUpper
|
//ToUpper
|
||||||
NextSubTest();
|
NextSubTest();
|
||||||
string = new BString("1a2b3c4d5E6f7g");
|
string = new BString("1a2b3c4d5E6f7g");
|
||||||
@@ -46,12 +58,24 @@ StringCaseTest::PerformTest(void)
|
|||||||
CPPUNIT_ASSERT(strcmp(string->String(), "1A2B3C4D5E6F7G") == 0);
|
CPPUNIT_ASSERT(strcmp(string->String(), "1A2B3C4D5E6F7G") == 0);
|
||||||
delete string;
|
delete string;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
string = new BString;
|
||||||
|
string->ToUpper();
|
||||||
|
CPPUNIT_ASSERT(strcmp(string->String(), "") == 0);
|
||||||
|
delete string;
|
||||||
|
|
||||||
//CapitalizeEachWord
|
//CapitalizeEachWord
|
||||||
NextSubTest();
|
NextSubTest();
|
||||||
string = new BString("each wOrd 3will_be >capiTalized");
|
string = new BString("each wOrd 3will_be >capiTalized");
|
||||||
string->CapitalizeEachWord();
|
string->CapitalizeEachWord();
|
||||||
CPPUNIT_ASSERT(strcmp(string->String(), "Each Word 3Will_Be >Capitalized") == 0);
|
CPPUNIT_ASSERT(strcmp(string->String(), "Each Word 3Will_Be >Capitalized") == 0);
|
||||||
delete string;
|
delete string;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
string = new BString;
|
||||||
|
string->CapitalizeEachWord();
|
||||||
|
CPPUNIT_ASSERT(strcmp(string->String(), "") == 0);
|
||||||
|
delete string;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,36 @@
|
|||||||
|
#include "StringEscapeTest.h"
|
||||||
|
#include "cppunit/TestCaller.h"
|
||||||
|
#include <String.h>
|
||||||
|
|
||||||
|
StringEscapeTest::StringEscapeTest(std::string name) :
|
||||||
|
BTestCase(name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
StringEscapeTest::~StringEscapeTest()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
StringEscapeTest::PerformTest(void)
|
||||||
|
{
|
||||||
|
BString *string1, *string2;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
string1 = new BString("abcdefghi");
|
||||||
|
string1->CharacterEscape("acf", '/');
|
||||||
|
CPPUNIT_ASSERT(strcmp(string1->String(), "/ab/cde/fghi") == 0);
|
||||||
|
delete string1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CppUnit::Test *StringEscapeTest::suite(void)
|
||||||
|
{
|
||||||
|
typedef CppUnit::TestCaller<StringEscapeTest>
|
||||||
|
StringEscapeTestCaller;
|
||||||
|
|
||||||
|
return(new StringEscapeTestCaller("BString::Escape Test", &StringEscapeTest::PerformTest));
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
#ifndef StringEscapeTest_H
|
||||||
|
#define StringEscapeTest_H
|
||||||
|
|
||||||
|
#include "TestCase.h"
|
||||||
|
#include <String.h>
|
||||||
|
|
||||||
|
|
||||||
|
class StringEscapeTest : public BTestCase
|
||||||
|
{
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
public:
|
||||||
|
static Test *suite(void);
|
||||||
|
void PerformTest(void);
|
||||||
|
StringEscapeTest(std::string name = "");
|
||||||
|
virtual ~StringEscapeTest();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -0,0 +1,85 @@
|
|||||||
|
#include "StringInsertTest.h"
|
||||||
|
#include "cppunit/TestCaller.h"
|
||||||
|
#include <String.h>
|
||||||
|
#include <iostream>
|
||||||
|
|
||||||
|
StringInsertTest::StringInsertTest(std::string name) :
|
||||||
|
BTestCase(name)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
StringInsertTest::~StringInsertTest()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void
|
||||||
|
StringInsertTest::PerformTest(void)
|
||||||
|
{
|
||||||
|
BString *str1, *str2;
|
||||||
|
|
||||||
|
//&Insert(const char *, int32 pos);
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString("String");
|
||||||
|
str1->Insert("INSERTED", 3);
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "StrINSERTEDing") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
|
//This test crashes both implementations
|
||||||
|
//NextSubTest();
|
||||||
|
//str1 = new BString("String");
|
||||||
|
//str1->Insert("INSERTED", 10);
|
||||||
|
//CPPUNIT_ASSERT(strcmp(str1->String(), "string") == 0);
|
||||||
|
//delete str1;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString;
|
||||||
|
str1->Insert("INSERTED", -1);
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "NSERTED") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
|
//&Insert(const char *, int32 length, int32 pos);
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString("string");
|
||||||
|
str1->Insert("INSERTED", 2, 2);
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "stINring") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
|
//This test crashes both implementations
|
||||||
|
//NextSubTest();
|
||||||
|
//str1 = new BString("string");
|
||||||
|
//str1->Insert("INSERTED", 2, 30);
|
||||||
|
//CPPUNIT_ASSERT(strcmp(str1->String(), "stINring") == 0);
|
||||||
|
//delete str1;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString("string");
|
||||||
|
str1->Insert("INSERTED", 10, 2);
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "stINSERTEDring") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
|
//&Insert(const char *, int32 fromOffset, int32 length, int32 pos);
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString("string");
|
||||||
|
str1->Insert("INSERTED", 4, 30, 2);
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "stRTEDring") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString("string");
|
||||||
|
str1->Insert('P', 5, 3);
|
||||||
|
cerr << str1->String() << endl;
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "strPPPPPing") == 0);
|
||||||
|
delete str1;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
CppUnit::Test *StringInsertTest::suite(void)
|
||||||
|
{
|
||||||
|
typedef CppUnit::TestCaller<StringInsertTest>
|
||||||
|
StringInsertTestCaller;
|
||||||
|
|
||||||
|
return(new StringInsertTestCaller("BString::Insert Test", &StringInsertTest::PerformTest));
|
||||||
|
}
|
||||||
@@ -0,0 +1,22 @@
|
|||||||
|
#ifndef StringInsertTest_H
|
||||||
|
#define StringInsertTest_H
|
||||||
|
|
||||||
|
#include "TestCase.h"
|
||||||
|
#include <String.h>
|
||||||
|
|
||||||
|
|
||||||
|
class StringInsertTest : public BTestCase
|
||||||
|
{
|
||||||
|
|
||||||
|
private:
|
||||||
|
|
||||||
|
protected:
|
||||||
|
|
||||||
|
public:
|
||||||
|
static Test *suite(void);
|
||||||
|
void PerformTest(void);
|
||||||
|
StringInsertTest(std::string name = "");
|
||||||
|
virtual ~StringInsertTest();
|
||||||
|
};
|
||||||
|
|
||||||
|
#endif
|
||||||
@@ -59,6 +59,13 @@ StringPrependTest::PerformTest(void)
|
|||||||
str1->Prepend('c', 4);
|
str1->Prepend('c', 4);
|
||||||
CPPUNIT_ASSERT(strcmp(str1->String(), "ccccaString") == 0);
|
CPPUNIT_ASSERT(strcmp(str1->String(), "ccccaString") == 0);
|
||||||
delete str1;
|
delete str1;
|
||||||
|
|
||||||
|
NextSubTest();
|
||||||
|
str1 = new BString;
|
||||||
|
str1->Prepend("PREPENDED");
|
||||||
|
CPPUNIT_ASSERT(strcmp(str1->String(), "PREPENDED") == 0);
|
||||||
|
delete str1;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -8,6 +8,8 @@
|
|||||||
#include "StringSubCopyTest.h"
|
#include "StringSubCopyTest.h"
|
||||||
#include "StringPrependTest.h"
|
#include "StringPrependTest.h"
|
||||||
#include "StringCaseTest.h"
|
#include "StringCaseTest.h"
|
||||||
|
#include "StringInsertTest.h"
|
||||||
|
#include "StringEscapeTest.h"
|
||||||
|
|
||||||
CppUnit::Test *StringTestSuite()
|
CppUnit::Test *StringTestSuite()
|
||||||
{
|
{
|
||||||
@@ -20,6 +22,8 @@ CppUnit::Test *StringTestSuite()
|
|||||||
testSuite->addTest(StringSubCopyTest::suite());
|
testSuite->addTest(StringSubCopyTest::suite());
|
||||||
testSuite->addTest(StringPrependTest::suite());
|
testSuite->addTest(StringPrependTest::suite());
|
||||||
testSuite->addTest(StringCaseTest::suite());
|
testSuite->addTest(StringCaseTest::suite());
|
||||||
|
testSuite->addTest(StringInsertTest::suite());
|
||||||
|
testSuite->addTest(StringEscapeTest::suite());
|
||||||
|
|
||||||
return(testSuite);
|
return(testSuite);
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user