#include "UnitTestPCH.h" #include using namespace std; using namespace Assimp; // ------------------------------------------------------------------------------------------------ TEST(RemoveCommentsTest, testSingleLineComments) { const char* szTest = "int i = 0; \n" "if (4 == //)\n" "\ttrue) { // do something here \n" "\t// hello ... and bye //\n"; char* szTest2 = new char[::strlen(szTest)+1]; ::strcpy(szTest2,szTest); const char* szTestResult = "int i = 0; \n" "if (4 == \n" "\ttrue) { \n" "\t \n"; CommentRemover::RemoveLineComments("//",szTest2,' '); EXPECT_STREQ(szTestResult, szTest2); delete[] szTest2; } // ------------------------------------------------------------------------------------------------ TEST(RemoveCommentsTest, testMultiLineComments) { const char* szTest = "/* comment to be removed */\n" "valid text /* \n " " comment across multiple lines */" " / * Incomplete comment */ /* /* multiple comments */ */"; const char* szTestResult = " \n" "valid text " " " " / * Incomplete comment */ */"; char* szTest2 = new char[::strlen(szTest)+1]; ::strcpy(szTest2,szTest); CommentRemover::RemoveMultiLineComments("/*","*/",szTest2,' '); EXPECT_STREQ(szTestResult, szTest2); delete[] szTest2; }