| 257 | } |
| 258 | |
| 259 | void TestCMakeManager::testEnumerateTargets() |
| 260 | { |
| 261 | QString tempDir = QDir::tempPath(); |
| 262 | |
| 263 | QTemporaryFile targetDirectoriesFile; |
| 264 | QTemporaryDir subdir; |
| 265 | |
| 266 | auto opened = targetDirectoriesFile.open(); |
| 267 | QVERIFY(opened); |
| 268 | QVERIFY(subdir.isValid()); |
| 269 | |
| 270 | const QString targetDirectoriesContent = tempDir + "/CMakeFiles/first_target.dir\n" + |
| 271 | tempDir + "/CMakeFiles/second_target.dir\r\n" + |
| 272 | tempDir + "/" + subdir.path() + "/CMakeFiles/third_target.dir"; |
| 273 | |
| 274 | targetDirectoriesFile.write(targetDirectoriesContent.toLatin1()); |
| 275 | targetDirectoriesFile.close(); |
| 276 | |
| 277 | QHash<KDevelop::Path, QStringList> targets = |
| 278 | CMake::enumerateTargets(Path(targetDirectoriesFile.fileName()), |
| 279 | tempDir, Path(tempDir)); |
| 280 | |
| 281 | QCOMPARE(targets.value(Path(tempDir)).value(0), QStringLiteral("first_target")); |
| 282 | QCOMPARE(targets.value(Path(tempDir)).value(1), QStringLiteral("second_target")); |
| 283 | QCOMPARE(targets.value(Path(tempDir + "/" + subdir.path())).value(0), QStringLiteral("third_target")); |
| 284 | } |
| 285 | |
| 286 | void TestCMakeManager::testReload() |
| 287 | { |