| Line | Source Code | Coverage | 
|---|
| 1 |  | - | 
| 2 |  | - | 
| 3 |  | - | 
| 4 |  | - | 
| 5 |  | - | 
| 6 |  | - | 
| 7 |  | - | 
| 8 |  | - | 
| 9 | static bool existsAsSpecified(const QString &path, QStandardPaths::LocateOptions options) | - | 
| 10 | { | - | 
| 11 | if (options & QStandardPaths::LocateDirectory) evaluated:  options & QStandardPaths::LocateDirectory| yes Evaluation Count:5 | yes Evaluation Count:121 | 
 | 5-121 | 
| 12 | return QDir(path).exists(); executed:  return QDir(path).exists();Execution Count:5 | 5 | 
| 13 | return QFileInfo(path).isFile(); executed:  return QFileInfo(path).isFile();Execution Count:121 | 121 | 
| 14 | } | - | 
| 15 | QString QStandardPaths::locate(StandardLocation type, const QString &fileName, LocateOptions options) | - | 
| 16 | { | - | 
| 17 | const QStringList &dirs = standardLocations(type); | - | 
| 18 | for (QStringList::const_iterator dir = dirs.constBegin(); dir != dirs.constEnd(); ++dir) { evaluated:  dir != dirs.constEnd()| yes Evaluation Count:4 | yes Evaluation Count:1 | 
 | 1-4 | 
| 19 | const QString path = *dir + QLatin1Char('/') + fileName; | - | 
| 20 | if (existsAsSpecified(path, options)) evaluated:  existsAsSpecified(path, options)| yes Evaluation Count:2 | yes Evaluation Count:2 | 
 | 2 | 
| 21 | return path; executed:  return path;Execution Count:2 | 2 | 
| 22 | } executed:  }Execution Count:2 | 2 | 
| 23 | return QString(); executed:  return QString();Execution Count:1 | 1 | 
| 24 | } | - | 
| 25 | QStringList QStandardPaths::locateAll(StandardLocation type, const QString &fileName, LocateOptions options) | - | 
| 26 | { | - | 
| 27 | const QStringList &dirs = standardLocations(type); | - | 
| 28 | QStringList result; | - | 
| 29 | for (QStringList::const_iterator dir = dirs.constBegin(); dir != dirs.constEnd(); ++dir) { evaluated:  dir != dirs.constEnd()| yes Evaluation Count:122 | yes Evaluation Count:61 | 
 | 61-122 | 
| 30 | const QString path = *dir + QLatin1Char('/') + fileName; | - | 
| 31 | if (existsAsSpecified(path, options)) evaluated:  existsAsSpecified(path, options)| yes Evaluation Count:77 | yes Evaluation Count:45 | 
 | 45-77 | 
| 32 | result.append(path); executed:  result.append(path);Execution Count:77 | 77 | 
| 33 | } executed:  }Execution Count:122 | 122 | 
| 34 | return result; executed:  return result;Execution Count:61 | 61 | 
| 35 | } | - | 
| 36 | static QString checkExecutable(const QString &path) | - | 
| 37 | { | - | 
| 38 | const QFileInfo info(path); | - | 
| 39 | if (info.isBundle()) partially evaluated:  info.isBundle()| no Evaluation Count:0 | yes Evaluation Count:122 | 
 | 0-122 | 
| 40 | return info.bundleName(); never executed: return info.bundleName(); | 0 | 
| 41 | if (info.isFile() && info.isExecutable()) evaluated:  info.isFile()| yes Evaluation Count:10 | yes Evaluation Count:112 | 
partially evaluated:  info.isExecutable()| yes Evaluation Count:10 | no Evaluation Count:0 | 
 | 0-112 | 
| 42 | return QDir::cleanPath(path); executed:  return QDir::cleanPath(path);Execution Count:10 | 10 | 
| 43 | return QString(); executed:  return QString();Execution Count:112 | 112 | 
| 44 | } | - | 
| 45 |  | - | 
| 46 | static inline QString searchExecutable(const QStringList &searchPaths, | - | 
| 47 | const QString &executableName) | - | 
| 48 | { | - | 
| 49 | const QDir currentDir = QDir::current(); | - | 
| 50 | for (QForeachContainer<__typeof__(searchPaths)> _container_(searchPaths); !_container_.brk && _container_.i != _container_.e; __extension__ ({ ++_container_.brk; ++_container_.i; })) for (const QString &searchPath = *_container_.i;; __extension__ ({--_container_.brk; break;})) { | - | 
| 51 | const QString candidate = currentDir.absoluteFilePath(searchPath + QLatin1Char('/') + executableName); | - | 
| 52 | const QString absPath = checkExecutable(candidate); | - | 
| 53 | if (!absPath.isEmpty()) evaluated:  !absPath.isEmpty()| yes Evaluation Count:9 | yes Evaluation Count:111 | 
 | 9-111 | 
| 54 | return absPath; executed:  return absPath;Execution Count:9 | 9 | 
| 55 | } executed:  }Execution Count:111 | 111 | 
| 56 | return QString(); executed:  return QString();Execution Count:2 | 2 | 
| 57 | } | - | 
| 58 | QString QStandardPaths::findExecutable(const QString &executableName, const QStringList &paths) | - | 
| 59 | { | - | 
| 60 | if (QFileInfo(executableName).isAbsolute()) evaluated:  QFileInfo(executableName).isAbsolute()| yes Evaluation Count:2 | yes Evaluation Count:11 | 
 | 2-11 | 
| 61 | return checkExecutable(executableName); executed:  return checkExecutable(executableName);Execution Count:2 | 2 | 
| 62 |  | - | 
| 63 | QStringList searchPaths = paths; | - | 
| 64 | if (paths.isEmpty()) { partially evaluated:  paths.isEmpty()| yes Evaluation Count:11 | no Evaluation Count:0 | 
 | 0-11 | 
| 65 | QByteArray pEnv = qgetenv("PATH"); | - | 
| 66 |  | - | 
| 67 |  | - | 
| 68 |  | - | 
| 69 | const QLatin1Char pathSep(':'); | - | 
| 70 |  | - | 
| 71 |  | - | 
| 72 | const QStringList rawPaths = QString::fromLocal8Bit(pEnv.constData()).split(pathSep, QString::SkipEmptyParts); | - | 
| 73 | searchPaths.reserve(rawPaths.size()); | - | 
| 74 | for (QForeachContainer<__typeof__(rawPaths)> _container_(rawPaths); !_container_.brk && _container_.i != _container_.e; __extension__ ({ ++_container_.brk; ++_container_.i; })) for (const QString &rawPath = *_container_.i;; __extension__ ({--_container_.brk; break;})) { | - | 
| 75 | QString cleanPath = QDir::cleanPath(rawPath); | - | 
| 76 | if (cleanPath.size() > 1 && cleanPath.endsWith(QLatin1Char('/'))) partially evaluated:  cleanPath.size() > 1| yes Evaluation Count:143 | no Evaluation Count:0 | 
partially evaluated:  cleanPath.endsWith(QLatin1Char('/'))| no Evaluation Count:0 | yes Evaluation Count:143 | 
 | 0-143 | 
| 77 | cleanPath.truncate(cleanPath.size() - 1); never executed: cleanPath.truncate(cleanPath.size() - 1); | 0 | 
| 78 | searchPaths.push_back(cleanPath); | - | 
| 79 | } executed:  }Execution Count:143 | 143 | 
| 80 | } executed:  }Execution Count:11 | 11 | 
| 81 | return searchExecutable(searchPaths, executableName); executed:  return searchExecutable(searchPaths, executableName);Execution Count:11 | 11 | 
| 82 | } | - | 
| 83 | QString QStandardPaths::displayName(StandardLocation type) | - | 
| 84 | { | - | 
| 85 | switch (type) { | - | 
| 86 | case DesktopLocation: | - | 
| 87 | return QCoreApplication::translate("QStandardPaths", "Desktop"); executed:  return QCoreApplication::translate("QStandardPaths", "Desktop");Execution Count:1 | 1 | 
| 88 | case DocumentsLocation: | - | 
| 89 | return QCoreApplication::translate("QStandardPaths", "Documents"); executed:  return QCoreApplication::translate("QStandardPaths", "Documents");Execution Count:1 | 1 | 
| 90 | case FontsLocation: | - | 
| 91 | return QCoreApplication::translate("QStandardPaths", "Fonts"); executed:  return QCoreApplication::translate("QStandardPaths", "Fonts");Execution Count:1 | 1 | 
| 92 | case ApplicationsLocation: | - | 
| 93 | return QCoreApplication::translate("QStandardPaths", "Applications"); executed:  return QCoreApplication::translate("QStandardPaths", "Applications");Execution Count:1 | 1 | 
| 94 | case MusicLocation: | - | 
| 95 | return QCoreApplication::translate("QStandardPaths", "Music"); executed:  return QCoreApplication::translate("QStandardPaths", "Music");Execution Count:1 | 1 | 
| 96 | case MoviesLocation: | - | 
| 97 | return QCoreApplication::translate("QStandardPaths", "Movies"); executed:  return QCoreApplication::translate("QStandardPaths", "Movies");Execution Count:1 | 1 | 
| 98 | case PicturesLocation: | - | 
| 99 | return QCoreApplication::translate("QStandardPaths", "Pictures"); executed:  return QCoreApplication::translate("QStandardPaths", "Pictures");Execution Count:1 | 1 | 
| 100 | case TempLocation: | - | 
| 101 | return QCoreApplication::translate("QStandardPaths", "Temporary Directory"); executed:  return QCoreApplication::translate("QStandardPaths", "Temporary Directory");Execution Count:1 | 1 | 
| 102 | case HomeLocation: | - | 
| 103 | return QCoreApplication::translate("QStandardPaths", "Home"); executed:  return QCoreApplication::translate("QStandardPaths", "Home");Execution Count:1 | 1 | 
| 104 | case DataLocation: | - | 
| 105 | return QCoreApplication::translate("QStandardPaths", "Application Data"); executed:  return QCoreApplication::translate("QStandardPaths", "Application Data");Execution Count:1 | 1 | 
| 106 | case CacheLocation: | - | 
| 107 | return QCoreApplication::translate("QStandardPaths", "Cache"); never executed: return QCoreApplication::translate("QStandardPaths", "Cache"); | 0 | 
| 108 | case GenericDataLocation: | - | 
| 109 | return QCoreApplication::translate("QStandardPaths", "Shared Data"); never executed: return QCoreApplication::translate("QStandardPaths", "Shared Data"); | 0 | 
| 110 | case RuntimeLocation: | - | 
| 111 | return QCoreApplication::translate("QStandardPaths", "Runtime"); never executed: return QCoreApplication::translate("QStandardPaths", "Runtime"); | 0 | 
| 112 | case ConfigLocation: | - | 
| 113 | return QCoreApplication::translate("QStandardPaths", "Configuration"); never executed: return QCoreApplication::translate("QStandardPaths", "Configuration"); | 0 | 
| 114 | case GenericCacheLocation: | - | 
| 115 | return QCoreApplication::translate("QStandardPaths", "Shared Cache"); never executed: return QCoreApplication::translate("QStandardPaths", "Shared Cache"); | 0 | 
| 116 | case DownloadLocation: | - | 
| 117 | return QCoreApplication::translate("QStandardPaths", "Download"); executed:  return QCoreApplication::translate("QStandardPaths", "Download");Execution Count:1 | 1 | 
| 118 | } | - | 
| 119 |  | - | 
| 120 | return QString(); never executed: return QString(); | 0 | 
| 121 | } | - | 
| 122 | static bool qsp_testMode = false; | - | 
| 123 |  | - | 
| 124 | void QStandardPaths::enableTestMode(bool testMode) | - | 
| 125 | { | - | 
| 126 | qsp_testMode = testMode; | - | 
| 127 | } executed:  }Execution Count:2 | 2 | 
| 128 | bool QStandardPaths::isTestModeEnabled() | - | 
| 129 | { | - | 
| 130 | return qsp_testMode; executed:  return qsp_testMode;Execution Count:125 | 125 | 
| 131 | } | - | 
| 132 |  | - | 
| 133 |  | - | 
| 134 |  | - | 
| 135 |  | - | 
|  |  |  |