diff options
Diffstat (limited to 'Tests/CMakeLib/testVisualStudioSlnParser.cxx')
-rw-r--r-- | Tests/CMakeLib/testVisualStudioSlnParser.cxx | 216 |
1 files changed, 94 insertions, 122 deletions
diff --git a/Tests/CMakeLib/testVisualStudioSlnParser.cxx b/Tests/CMakeLib/testVisualStudioSlnParser.cxx index b31cc47..f8bcfae 100644 --- a/Tests/CMakeLib/testVisualStudioSlnParser.cxx +++ b/Tests/CMakeLib/testVisualStudioSlnParser.cxx @@ -8,177 +8,149 @@ static bool parsedRight(cmVisualStudioSlnParser& parser, const std::string& file, cmSlnData& data, cmVisualStudioSlnParser::ParseResult expected = - cmVisualStudioSlnParser::ResultOK) + cmVisualStudioSlnParser::ResultOK) { - if (parser.ParseFile(SOURCE_DIR "/testVisualStudioSlnParser_data/" + file - + "." SLN_EXTENSION, - data, cmVisualStudioSlnParser::DataGroupProjects)) - { - if (expected == cmVisualStudioSlnParser::ResultOK) - { + if (parser.ParseFile(SOURCE_DIR "/testVisualStudioSlnParser_data/" + file + + "." SLN_EXTENSION, + data, cmVisualStudioSlnParser::DataGroupProjects)) { + if (expected == cmVisualStudioSlnParser::ResultOK) { return true; - } } - else - { - if (parser.GetParseResult() == expected) - { + } else { + if (parser.GetParseResult() == expected) { return true; - } } + } std::cerr << "cmVisualStudioSlnParser mis-parsed " << file << "." SLN_EXTENSION << "; expected result " << expected - << ", got " << parser.GetParseResult() - << std::endl; + << ", got " << parser.GetParseResult() << std::endl; return false; } -int testVisualStudioSlnParser(int, char*[]) +int testVisualStudioSlnParser(int, char* []) { cmVisualStudioSlnParser parser; // Test clean parser - if (parser.GetParseResult() != cmVisualStudioSlnParser::ResultOK) - { - std::cerr << "cmVisualStudioSlnParser initialisation failed" - << std::endl; + if (parser.GetParseResult() != cmVisualStudioSlnParser::ResultOK) { + std::cerr << "cmVisualStudioSlnParser initialisation failed" << std::endl; return 1; - } + } // Test parsing valid sln { - cmSlnData data; - if (!parsedRight(parser, "valid", data)) - { - return 1; + cmSlnData data; + if (!parsedRight(parser, "valid", data)) { + return 1; } - const std::vector<cmSlnProjectEntry>& projects = data.GetProjects(); - const char * const names[] = - { - "3rdParty", "ALL_BUILD", "CMakeLib", "CMakeLibTests", - "CMakePredefinedTargets", "CPackLib", "CTestDashboardTargets", "CTestLib", - "Continuous", "Documentation", - "Experimental", "INSTALL", "KWSys", "LIBCURL", "Nightly", - "NightlyMemoryCheck", "PACKAGE", "RUN_TESTS", "Tests", "Utilities", - "Win9xCompat", "ZERO_CHECK", "cmIML_test", "cmake", "cmbzip2", "cmcldeps", - "cmcompress", "cmcurl", "cmexpat", "cmlibarchive", "cmsys", - "cmsysEncodeExecutable", "cmsysProcessFwd9x", "cmsysTestDynload", - "cmsysTestProcess", "cmsysTestSharedForward", "cmsysTestsC", - "cmsysTestsCxx", "cmsys_c", "cmw9xcom", "cmzlib", "cpack", "ctest", - "documentation", "memcheck_fail", "pseudo_BC", "pseudo_purify", - "pseudo_valgrind", "test_clean", "uninstall" - /* clang-format needs this comment to break after the opening brace */ + const std::vector<cmSlnProjectEntry>& projects = data.GetProjects(); + const char* const names[] = { + "3rdParty", "ALL_BUILD", "CMakeLib", "CMakeLibTests", + "CMakePredefinedTargets", "CPackLib", "CTestDashboardTargets", + "CTestLib", "Continuous", "Documentation", "Experimental", "INSTALL", + "KWSys", "LIBCURL", "Nightly", "NightlyMemoryCheck", "PACKAGE", + "RUN_TESTS", "Tests", "Utilities", "Win9xCompat", "ZERO_CHECK", + "cmIML_test", "cmake", "cmbzip2", "cmcldeps", "cmcompress", "cmcurl", + "cmexpat", "cmlibarchive", "cmsys", "cmsysEncodeExecutable", + "cmsysProcessFwd9x", "cmsysTestDynload", "cmsysTestProcess", + "cmsysTestSharedForward", "cmsysTestsC", "cmsysTestsCxx", "cmsys_c", + "cmw9xcom", "cmzlib", "cpack", "ctest", "documentation", "memcheck_fail", + "pseudo_BC", "pseudo_purify", "pseudo_valgrind", "test_clean", + "uninstall" + /* clang-format needs this comment to break after the opening brace */ }; - const size_t expectedProjectCount = sizeof(names) / sizeof(*names); - if (projects.size() != expectedProjectCount) - { - std::cerr << "cmVisualStudioSlnParser returned bad number of " - << "projects (" << projects.size() << " instead of " - << expectedProjectCount << ')' - << std::endl; - return 1; - } - for (size_t idx = 0; idx < expectedProjectCount; ++idx) - { - if (projects[idx].GetName() != names[idx]) - { - std::cerr << "cmVisualStudioSlnParser returned bad project #" - << idx << "; expected \"" << names[idx] << "\", got \"" - << projects[idx].GetName() << '"' - << std::endl; + const size_t expectedProjectCount = sizeof(names) / sizeof(*names); + if (projects.size() != expectedProjectCount) { + std::cerr << "cmVisualStudioSlnParser returned bad number of " + << "projects (" << projects.size() << " instead of " + << expectedProjectCount << ')' << std::endl; return 1; + } + for (size_t idx = 0; idx < expectedProjectCount; ++idx) { + if (projects[idx].GetName() != names[idx]) { + std::cerr << "cmVisualStudioSlnParser returned bad project #" << idx + << "; expected \"" << names[idx] << "\", got \"" + << projects[idx].GetName() << '"' << std::endl; + return 1; } } - if (projects[0].GetRelativePath() != "Utilities\\3rdParty") - { - std::cerr << "cmVisualStudioSlnParser returned bad relative path of " - << "project 3rdParty; expected \"Utilities\\3rdParty\", " - << "got \"" << projects[0].GetRelativePath() << '"' - << std::endl; - return 1; + if (projects[0].GetRelativePath() != "Utilities\\3rdParty") { + std::cerr << "cmVisualStudioSlnParser returned bad relative path of " + << "project 3rdParty; expected \"Utilities\\3rdParty\", " + << "got \"" << projects[0].GetRelativePath() << '"' + << std::endl; + return 1; } - if (projects[2].GetGUID() != "{59BCCCCD-3AD1-4491-B8F4-C5793AC007E2}") - { - std::cerr << "cmVisualStudioSlnParser returned bad relative path of " - << "project CMakeLib; expected " - << "\"{59BCCCCD-3AD1-4491-B8F4-C5793AC007E2}\", " - << "got \"" << projects[2].GetGUID() << '"' - << std::endl; - return 1; + if (projects[2].GetGUID() != "{59BCCCCD-3AD1-4491-B8F4-C5793AC007E2}") { + std::cerr << "cmVisualStudioSlnParser returned bad relative path of " + << "project CMakeLib; expected " + << "\"{59BCCCCD-3AD1-4491-B8F4-C5793AC007E2}\", " + << "got \"" << projects[2].GetGUID() << '"' << std::endl; + return 1; } } // Test BOM parsing { - cmSlnData data; + cmSlnData data; - if (!parsedRight(parser, "bom", data)) - { - return 1; + if (!parsedRight(parser, "bom", data)) { + return 1; } - if (!parser.GetParseHadBOM()) - { - std::cerr << "cmVisualStudioSlnParser didn't find BOM in bom." - << SLN_EXTENSION - << std::endl; - return 1; + if (!parser.GetParseHadBOM()) { + std::cerr << "cmVisualStudioSlnParser didn't find BOM in bom." + << SLN_EXTENSION << std::endl; + return 1; } - if (!parsedRight(parser, "nobom", data)) - { - return 1; + if (!parsedRight(parser, "nobom", data)) { + return 1; } - if (parser.GetParseHadBOM()) - { - std::cerr << "cmVisualStudioSlnParser found BOM in nobom." - << SLN_EXTENSION - << std::endl; - return 1; + if (parser.GetParseHadBOM()) { + std::cerr << "cmVisualStudioSlnParser found BOM in nobom." + << SLN_EXTENSION << std::endl; + return 1; } } // Test invalid sln { - { - cmSlnData data; - if (!parsedRight(parser, "err-nonexistent", data, - cmVisualStudioSlnParser::ResultErrorOpeningInput)) { - return 1; + cmSlnData data; + if (!parsedRight(parser, "err-nonexistent", data, + cmVisualStudioSlnParser::ResultErrorOpeningInput)) { + return 1; + } } - } - { - cmSlnData data; - if (!parsedRight(parser, "err-empty", data, - cmVisualStudioSlnParser::ResultErrorReadingInput)) { - return 1; + cmSlnData data; + if (!parsedRight(parser, "err-empty", data, + cmVisualStudioSlnParser::ResultErrorReadingInput)) { + return 1; + } } - } - const char * const files[] = - { - "header", "projectArgs", "topLevel", "projectContents", "projectSection", - "global", "unclosed", "strayQuote", "strayParen", "strayQuote2" - /* clang-format needs this comment to break after the opening brace */ + const char* const files[] = { + "header", "projectArgs", "topLevel", "projectContents", + "projectSection", "global", "unclosed", "strayQuote", + "strayParen", "strayQuote2" + /* clang-format needs this comment to break after the opening brace */ }; - for (size_t idx = 0; idx < sizeof(files) / sizeof(files[0]); ++idx) - { - cmSlnData data; - if (!parsedRight(parser, std::string("err-structure-") + files[idx], data, - cmVisualStudioSlnParser::ResultErrorInputStructure)) - { - return 1; + for (size_t idx = 0; idx < sizeof(files) / sizeof(files[0]); ++idx) { + cmSlnData data; + if (!parsedRight(parser, std::string("err-structure-") + files[idx], + data, + cmVisualStudioSlnParser::ResultErrorInputStructure)) { + return 1; } } - { - cmSlnData data; - if (!parsedRight(parser, "err-data", data, - cmVisualStudioSlnParser::ResultErrorInputData)) { - return 1; + cmSlnData data; + if (!parsedRight(parser, "err-data", data, + cmVisualStudioSlnParser::ResultErrorInputData)) { + return 1; + } } } - } // All is well return 0; |