logic: more wstring usages
* removed header paths from VS Project setup message since VS doesn't send these anymore * implemented using wstring in IDE communication * fixed retrieving filepaths from QtDirectoryListbox that contain special characters * use wstring for source extensions * added special character as file extension to FileManagerTestSuite
This commit is contained in:
@@ -7,60 +7,60 @@ class NetworkProtocolHelperTestSuite : public CxxTest::TestSuite
|
||||
public:
|
||||
void test_parse_message(void)
|
||||
{
|
||||
std::string type = "setActiveToken";
|
||||
std::string divider = ">>";
|
||||
std::string filePath = "C:\\Users\\Manuel\\imporant\\file\\location\\fileName.cpp";
|
||||
std::string endOfMessageToken = "<EOM>";
|
||||
std::wstring type = L"setActiveToken";
|
||||
std::wstring divider = L">>";
|
||||
std::wstring filePath = L"C:/Users/Manuel/imporant/file/location/fileName.cpp";
|
||||
std::wstring endOfMessageToken = L"<EOM>";
|
||||
int row = 1;
|
||||
int column = 2;
|
||||
|
||||
// valid message
|
||||
std::stringstream message;
|
||||
std::wstringstream message;
|
||||
message << type << divider << filePath << divider << row << divider << column << endOfMessageToken;
|
||||
|
||||
NetworkProtocolHelper::SetActiveTokenMessage networkMessage = NetworkProtocolHelper::parseSetActiveTokenMessage(message.str());
|
||||
|
||||
TS_ASSERT_EQUALS(networkMessage.fileLocation, filePath);
|
||||
TS_ASSERT_EQUALS(networkMessage.filePath.wstr(), filePath);
|
||||
TS_ASSERT_EQUALS(networkMessage.row, row);
|
||||
TS_ASSERT_EQUALS(networkMessage.column, column);
|
||||
TS_ASSERT_EQUALS(networkMessage.valid, true);
|
||||
|
||||
// invalid type
|
||||
message.str("");
|
||||
message << "foo" << divider << filePath << divider << row << divider << column << endOfMessageToken;
|
||||
message.str(L"");
|
||||
message << L"foo" << divider << filePath << divider << row << divider << column << endOfMessageToken;
|
||||
networkMessage = NetworkProtocolHelper::parseSetActiveTokenMessage(message.str());
|
||||
|
||||
TS_ASSERT_EQUALS(networkMessage.fileLocation, "");
|
||||
TS_ASSERT_EQUALS(networkMessage.filePath.wstr(), L"");
|
||||
TS_ASSERT_EQUALS(networkMessage.row, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.column, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.valid, false);
|
||||
|
||||
// missing divider
|
||||
message.str("");
|
||||
message.str(L"");
|
||||
message << type << divider << filePath << row << divider << column << endOfMessageToken;
|
||||
networkMessage = NetworkProtocolHelper::parseSetActiveTokenMessage(message.str());
|
||||
|
||||
TS_ASSERT_EQUALS(networkMessage.fileLocation, "");
|
||||
TS_ASSERT_EQUALS(networkMessage.filePath.wstr(), L"");
|
||||
TS_ASSERT_EQUALS(networkMessage.row, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.column, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.valid, false);
|
||||
|
||||
// invalid row
|
||||
message.str("");
|
||||
message.str(L"");
|
||||
message << type << divider << filePath << divider << "potato" << divider << column << endOfMessageToken;
|
||||
networkMessage = NetworkProtocolHelper::parseSetActiveTokenMessage(message.str());
|
||||
|
||||
TS_ASSERT_EQUALS(networkMessage.fileLocation, "");
|
||||
TS_ASSERT_EQUALS(networkMessage.filePath.wstr(), L"");
|
||||
TS_ASSERT_EQUALS(networkMessage.row, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.column, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.valid, false);
|
||||
|
||||
// invalid column
|
||||
message.str("");
|
||||
message.str(L"");
|
||||
message << type << divider << filePath << divider << row << divider << "laz0r" << endOfMessageToken;
|
||||
networkMessage = NetworkProtocolHelper::parseSetActiveTokenMessage(message.str());
|
||||
|
||||
TS_ASSERT_EQUALS(networkMessage.fileLocation, "");
|
||||
TS_ASSERT_EQUALS(networkMessage.filePath.wstr(), L"");
|
||||
TS_ASSERT_EQUALS(networkMessage.row, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.column, 0);
|
||||
TS_ASSERT_EQUALS(networkMessage.valid, false);
|
||||
|
||||
Reference in New Issue
Block a user