diff options
| -rw-r--r-- | test/unit/testCharClassify.cxx | 20 | 
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;  	}  } | 
