KWSys 2016-09-23 (80f820fc)
Code extracted from: http://public.kitware.com/KWSys.git at commit 80f820fcbb7cb9536a7c3886fa60c5c211559daf (master). Upstream Shortlog ----------------- Brad King (3): 66cd1138 ConsoleBuf: Avoid unnecessary initializations in test code 4e6c9410 ConsoleBuf: Remove extra flush operations from test code 80f820fc ConsoleBuf: Avoid use of __FUNCTION__ in tests
This commit is contained in:
parent
9783ed1e6e
commit
d15b7603ae
|
@ -103,7 +103,7 @@ static void dumpBuffers(const T *expected, const T *received, size_t size) {
|
||||||
}
|
}
|
||||||
std::cerr << std::endl;
|
std::cerr << std::endl;
|
||||||
}
|
}
|
||||||
std::cerr << std::endl << std::flush;
|
std::cerr << std::endl;
|
||||||
}
|
}
|
||||||
|
|
||||||
//----------------------------------------------------------------------------
|
//----------------------------------------------------------------------------
|
||||||
|
@ -331,21 +331,23 @@ static int testPipe()
|
||||||
didFail = encodedTestString.compare(buffer2) == 0 ? 0 : 1;
|
didFail = encodedTestString.compare(buffer2) == 0 ? 0 : 1;
|
||||||
}
|
}
|
||||||
if (didFail != 0) {
|
if (didFail != 0) {
|
||||||
std::cerr << "Pipe's output didn't match expected output!" << std::endl << std::flush;
|
std::cerr << "Pipe's output didn't match expected output!" << std::endl;
|
||||||
dumpBuffers<char>(encodedTestString.c_str(), buffer, encodedTestString.size());
|
dumpBuffers<char>(encodedTestString.c_str(), buffer, encodedTestString.size());
|
||||||
dumpBuffers<char>(encodedInputTestString.c_str(), buffer + encodedTestString.size() + 1, encodedInputTestString.size());
|
dumpBuffers<char>(encodedInputTestString.c_str(), buffer + encodedTestString.size() + 1, encodedInputTestString.size());
|
||||||
dumpBuffers<char>(encodedTestString.c_str(), buffer2, encodedTestString.size());
|
dumpBuffers<char>(encodedTestString.c_str(), buffer2, encodedTestString.size());
|
||||||
}
|
}
|
||||||
} catch (const std::runtime_error &ex) {
|
} catch (const std::runtime_error &ex) {
|
||||||
DWORD lastError = GetLastError();
|
DWORD lastError = GetLastError();
|
||||||
std::cerr << "In function " << __FUNCTION__ << ":" << ex.what() << std::endl << std::flush;
|
std::cerr << "In function testPipe, line " << __LINE__ << ": "
|
||||||
|
<< ex.what() << std::endl;
|
||||||
displayError(lastError);
|
displayError(lastError);
|
||||||
}
|
}
|
||||||
finishProcess(didFail == 0);
|
finishProcess(didFail == 0);
|
||||||
}
|
}
|
||||||
} catch (const std::runtime_error &ex) {
|
} catch (const std::runtime_error &ex) {
|
||||||
DWORD lastError = GetLastError();
|
DWORD lastError = GetLastError();
|
||||||
std::cerr << "In function " << __FUNCTION__ << ":" << ex.what() << std::endl << std::flush;
|
std::cerr << "In function testPipe, line " << __LINE__ << ": "
|
||||||
|
<< ex.what() << std::endl;
|
||||||
displayError(lastError);
|
displayError(lastError);
|
||||||
}
|
}
|
||||||
finishPipe(inPipeRead, inPipeWrite);
|
finishPipe(inPipeRead, inPipeWrite);
|
||||||
|
@ -368,11 +370,11 @@ static int testFile()
|
||||||
(errFile = createFile(L"stderrFile.txt")) == INVALID_HANDLE_VALUE) {
|
(errFile = createFile(L"stderrFile.txt")) == INVALID_HANDLE_VALUE) {
|
||||||
throw std::runtime_error("createFile failed!");
|
throw std::runtime_error("createFile failed!");
|
||||||
}
|
}
|
||||||
int length = 0;
|
|
||||||
DWORD bytesWritten = 0;
|
DWORD bytesWritten = 0;
|
||||||
char buffer[200];
|
char buffer[200];
|
||||||
char buffer2[200];
|
char buffer2[200];
|
||||||
|
|
||||||
|
int length;
|
||||||
if ((length = WideCharToMultiByte(TestCodepage, 0, UnicodeInputTestString, -1,
|
if ((length = WideCharToMultiByte(TestCodepage, 0, UnicodeInputTestString, -1,
|
||||||
buffer, sizeof(buffer),
|
buffer, sizeof(buffer),
|
||||||
NULL, NULL)) == 0) {
|
NULL, NULL)) == 0) {
|
||||||
|
@ -424,21 +426,23 @@ static int testFile()
|
||||||
didFail = encodedTestString.compare(buffer2) == 0 ? 0 : 1;
|
didFail = encodedTestString.compare(buffer2) == 0 ? 0 : 1;
|
||||||
}
|
}
|
||||||
if (didFail != 0) {
|
if (didFail != 0) {
|
||||||
std::cerr << "File's output didn't match expected output!" << std::endl << std::flush;
|
std::cerr << "File's output didn't match expected output!" << std::endl;
|
||||||
dumpBuffers<char>(encodedTestString.c_str(), buffer, encodedTestString.size());
|
dumpBuffers<char>(encodedTestString.c_str(), buffer, encodedTestString.size());
|
||||||
dumpBuffers<char>(encodedInputTestString.c_str(), buffer + encodedTestString.size() + 1, encodedInputTestString.size() - 1);
|
dumpBuffers<char>(encodedInputTestString.c_str(), buffer + encodedTestString.size() + 1, encodedInputTestString.size() - 1);
|
||||||
dumpBuffers<char>(encodedTestString.c_str(), buffer2, encodedTestString.size());
|
dumpBuffers<char>(encodedTestString.c_str(), buffer2, encodedTestString.size());
|
||||||
}
|
}
|
||||||
} catch (const std::runtime_error &ex) {
|
} catch (const std::runtime_error &ex) {
|
||||||
DWORD lastError = GetLastError();
|
DWORD lastError = GetLastError();
|
||||||
std::cerr << "In function " << __FUNCTION__ << ":" << ex.what() << std::endl << std::flush;
|
std::cerr << "In function testFile, line " << __LINE__ << ": "
|
||||||
|
<< ex.what() << std::endl;
|
||||||
displayError(lastError);
|
displayError(lastError);
|
||||||
}
|
}
|
||||||
finishProcess(didFail == 0);
|
finishProcess(didFail == 0);
|
||||||
}
|
}
|
||||||
} catch (const std::runtime_error &ex) {
|
} catch (const std::runtime_error &ex) {
|
||||||
DWORD lastError = GetLastError();
|
DWORD lastError = GetLastError();
|
||||||
std::cerr << "In function " << __FUNCTION__ << ":" << ex.what() << std::endl << std::flush;
|
std::cerr << "In function testFile, line " << __LINE__ << ": "
|
||||||
|
<< ex.what() << std::endl;
|
||||||
displayError(lastError);
|
displayError(lastError);
|
||||||
}
|
}
|
||||||
finishFile(inFile);
|
finishFile(inFile);
|
||||||
|
@ -508,18 +512,18 @@ static int testConsole()
|
||||||
forceNewConsole = true;
|
forceNewConsole = true;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
std::cerr << "RegGetValueW(FontFamily) failed!" << std::endl << std::flush;
|
std::cerr << "RegGetValueW(FontFamily) failed!" << std::endl;
|
||||||
}
|
}
|
||||||
RegCloseKey(hConsoleKey);
|
RegCloseKey(hConsoleKey);
|
||||||
} else {
|
} else {
|
||||||
std::cerr << "RegOpenKeyExW(HKEY_CURRENT_USER\\Console) failed!" << std::endl << std::flush;
|
std::cerr << "RegOpenKeyExW(HKEY_CURRENT_USER\\Console) failed!" << std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (forceNewConsole || GetConsoleMode(parentOut, &consoleMode) == 0) {
|
if (forceNewConsole || GetConsoleMode(parentOut, &consoleMode) == 0) {
|
||||||
// Not a real console, let's create new one.
|
// Not a real console, let's create new one.
|
||||||
FreeConsole();
|
FreeConsole();
|
||||||
if (!AllocConsole()) {
|
if (!AllocConsole()) {
|
||||||
std::cerr << "AllocConsole failed!" << std::endl << std::flush;
|
std::cerr << "AllocConsole failed!" << std::endl;
|
||||||
return didFail;
|
return didFail;
|
||||||
}
|
}
|
||||||
SECURITY_ATTRIBUTES securityAttributes;
|
SECURITY_ATTRIBUTES securityAttributes;
|
||||||
|
@ -561,11 +565,11 @@ static int testConsole()
|
||||||
consoleFont.FontFamily = TestFontFamily;
|
consoleFont.FontFamily = TestFontFamily;
|
||||||
wcscpy(consoleFont.FaceName, TestFaceName);
|
wcscpy(consoleFont.FaceName, TestFaceName);
|
||||||
if (!setConsoleFont(hOut, FALSE, &consoleFont)) {
|
if (!setConsoleFont(hOut, FALSE, &consoleFont)) {
|
||||||
std::cerr << "SetCurrentConsoleFontEx failed!" << std::endl << std::flush;
|
std::cerr << "SetCurrentConsoleFontEx failed!" << std::endl;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
std::cerr << "GetCurrentConsoleFontEx failed!" << std::endl << std::flush;
|
std::cerr << "GetCurrentConsoleFontEx failed!" << std::endl;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
#endif
|
#endif
|
||||||
|
@ -599,7 +603,7 @@ static int testConsole()
|
||||||
INPUT_RECORD inputBuffer[(sizeof(UnicodeInputTestString) /
|
INPUT_RECORD inputBuffer[(sizeof(UnicodeInputTestString) /
|
||||||
sizeof(UnicodeInputTestString[0])) * 2];
|
sizeof(UnicodeInputTestString[0])) * 2];
|
||||||
memset(&inputBuffer, 0, sizeof(inputBuffer));
|
memset(&inputBuffer, 0, sizeof(inputBuffer));
|
||||||
unsigned int i = 0;
|
unsigned int i;
|
||||||
for (i = 0; i < (sizeof(UnicodeInputTestString) /
|
for (i = 0; i < (sizeof(UnicodeInputTestString) /
|
||||||
sizeof(UnicodeInputTestString[0]) - 1); i++) {
|
sizeof(UnicodeInputTestString[0]) - 1); i++) {
|
||||||
writeInputKeyEvent(&inputBuffer[i*2], UnicodeInputTestString[i]);
|
writeInputKeyEvent(&inputBuffer[i*2], UnicodeInputTestString[i]);
|
||||||
|
@ -650,7 +654,7 @@ static int testConsole()
|
||||||
) {
|
) {
|
||||||
didFail = 0;
|
didFail = 0;
|
||||||
} else {
|
} else {
|
||||||
std::cerr << "Console's output didn't match expected output!" << std::endl << std::flush;
|
std::cerr << "Console's output didn't match expected output!" << std::endl;
|
||||||
dumpBuffers<wchar_t>(wideTestString.c_str(), outputBuffer, wideTestString.size());
|
dumpBuffers<wchar_t>(wideTestString.c_str(), outputBuffer, wideTestString.size());
|
||||||
dumpBuffers<wchar_t>(wideTestString.c_str(), outputBuffer + screenBufferInfo.dwSize.X * 1, wideTestString.size());
|
dumpBuffers<wchar_t>(wideTestString.c_str(), outputBuffer + screenBufferInfo.dwSize.X * 1, wideTestString.size());
|
||||||
dumpBuffers<wchar_t>(UnicodeInputTestString, outputBuffer + screenBufferInfo.dwSize.X * 2, (sizeof(UnicodeInputTestString) - 1) / sizeof(WCHAR));
|
dumpBuffers<wchar_t>(UnicodeInputTestString, outputBuffer + screenBufferInfo.dwSize.X * 2, (sizeof(UnicodeInputTestString) - 1) / sizeof(WCHAR));
|
||||||
|
@ -659,7 +663,8 @@ static int testConsole()
|
||||||
delete[] outputBuffer;
|
delete[] outputBuffer;
|
||||||
} catch (const std::runtime_error &ex) {
|
} catch (const std::runtime_error &ex) {
|
||||||
DWORD lastError = GetLastError();
|
DWORD lastError = GetLastError();
|
||||||
std::cerr << "In function " << __FUNCTION__ << ":" << ex.what() << std::endl << std::flush;
|
std::cerr << "In function testConsole, line " << __LINE__ << ": "
|
||||||
|
<< ex.what() << std::endl;
|
||||||
displayError(lastError);
|
displayError(lastError);
|
||||||
}
|
}
|
||||||
finishProcess(didFail == 0);
|
finishProcess(didFail == 0);
|
||||||
|
|
Loading…
Reference in New Issue