aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--test/unit/testCharClassify.cxx20
1 files changed, 8 insertions, 12 deletions
diff --git a/test/unit/testCharClassify.cxx b/test/unit/testCharClassify.cxx
index 9b33fbeaf..5dd004e83 100644
--- a/test/unit/testCharClassify.cxx
+++ b/test/unit/testCharClassify.cxx
@@ -19,7 +19,7 @@ class CharClassifyTest {
CharClassifyTest(const CharClassifyTest &) = delete;
protected:
CharClassifyTest() {
- pcc = new CharClassify();
+ pcc.reset(new CharClassify());
for (int ch = 0; ch < 256; ch++) {
if (ch == '\r' || ch == '\n')
charClass[ch] = CharClassify::ccNewLine;
@@ -33,11 +33,9 @@ protected:
}
~CharClassifyTest() {
- delete pcc;
- pcc = 0;
}
- CharClassify *pcc;
+ std::unique_ptr<CharClassify> pcc;
CharClassify::cc charClass[256];
static const char* GetClassName(CharClassify::cc charClass) {
@@ -94,30 +92,28 @@ TEST_CASE_METHOD(CharClassifyTest, "CharsOfClass") {
for (int classVal = 0; classVal < 4; ++classVal) {
CharClassify::cc thisClass = CharClassify::cc(classVal % 4);
int size = pcc->GetCharsOfClass(thisClass, NULL);
- unsigned char* buffer = new unsigned char[size + 1];
- buffer[size] = '\0';
- pcc->GetCharsOfClass(thisClass, buffer);
+ std::vector<unsigned char> buffer(size+1);
+ pcc->GetCharsOfClass(thisClass, &buffer[0]);
for (int i = 1; i < 256; i++) {
if (charClass[i] == thisClass) {
- if (!memchr(reinterpret_cast<char*>(buffer), i, size))
+ if (!memchr(reinterpret_cast<char*>(&buffer[0]), i, size))
std::cerr
<< "Character " << i
<< " should be class " << GetClassName(thisClass)
<< ", but was not in GetCharsOfClass;"
<< " it is reported to be "
<< GetClassName(pcc->GetClass(i)) << std::endl;
- REQUIRE(memchr(reinterpret_cast<char*>(buffer), i, size));
+ REQUIRE(memchr(reinterpret_cast<char*>(&buffer[0]), i, size));
} else {
- if (memchr(reinterpret_cast<char*>(buffer), i, size))
+ if (memchr(reinterpret_cast<char*>(&buffer[0]), i, size))
std::cerr
<< "Character " << i
<< " should not be class " << GetClassName(thisClass)
<< ", but was in GetCharsOfClass"
<< " it is reported to be "
<< GetClassName(pcc->GetClass(i)) << std::endl;
- REQUIRE_FALSE(memchr(reinterpret_cast<char*>(buffer), i, size));
+ REQUIRE_FALSE(memchr(reinterpret_cast<char*>(&buffer[0]), i, size));
}
}
- delete []buffer;
}
}