Cppcheck and unit test fixes

This commit is contained in:
Klaus Basan
2018-07-31 21:41:34 +02:00
parent fe99eb0fed
commit dd687b7d90
8 changed files with 30 additions and 15 deletions

View File

@@ -21,6 +21,9 @@ passedByValue:src/blackmisc/logcategorylist.h
passedByValue:src/blackmisc/platformset.cpp passedByValue:src/blackmisc/platformset.cpp
passedByValue:src/blackmisc/geo/coordinategeodeticlist.cpp passedByValue:src/blackmisc/geo/coordinategeodeticlist.cpp
// variableHidingEnum for status message
variableHidingEnum:src/blackmisc/statusmessage.h
// Shared pointers should be passed by value // Shared pointers should be passed by value
passedByValue:src/blackmisc/lockfree.h passedByValue:src/blackmisc/lockfree.h

View File

@@ -658,9 +658,10 @@ namespace BlackCore
{ {
Q_UNUSED(mode); Q_UNUSED(mode);
CAircraftModelList usedModelSet; CAircraftModelList usedModelSet;
static const bool NoZeroScores = true; // cppcheck-suppress variableScope
static const bool PreferColorLiveries = true; static constexpr bool DoNotMindAboutColorLiveries = false;
static const bool DoNotMindAboutColorLiveries = false; static constexpr bool NoZeroScores = true;
static constexpr bool PreferColorLiveries = true;
// VTOL // VTOL
ScoredModels map; ScoredModels map;

View File

@@ -1051,6 +1051,7 @@ namespace BlackCore
} }
} }
Q_UNUSED(haveRequestedElevation);
return correctedSituation; return correctedSituation;
} }

View File

@@ -144,11 +144,11 @@ namespace BlackMisc
return dirs; return dirs;
} }
const QMap<QString, CApplicationInfo> &CDirectoryUtils::applicationDataDirectoryMapWithoutCurrentVersion() const CDirectoryUtils::FilePerApplication &CDirectoryUtils::applicationDataDirectoryMapWithoutCurrentVersion()
{ {
static const QMap<QString, CApplicationInfo> dirs = [ = ] static const FilePerApplication dirs = [ = ]() -> FilePerApplication
{ {
QMap<QString, CApplicationInfo> directories; FilePerApplication directories;
for (const QFileInfo &info : CDirectoryUtils::applicationDataDirectories()) for (const QFileInfo &info : CDirectoryUtils::applicationDataDirectories())
{ {
if (caseInsensitiveStringCompare(info.filePath(), CDirectoryUtils::normalizedApplicationDataDirectory())) { continue; } if (caseInsensitiveStringCompare(info.filePath(), CDirectoryUtils::normalizedApplicationDataDirectory())) { continue; }
@@ -170,6 +170,8 @@ namespace BlackMisc
appInfo.setApplicationDataDirectory(info.filePath()); appInfo.setApplicationDataDirectory(info.filePath());
directories.insert(info.filePath(), appInfo); directories.insert(info.filePath(), appInfo);
} }
// https://stackoverflow.com/q/51635959/356726
// cppcheck-suppress returnReference
return directories; return directories;
}(); }();
return dirs; return dirs;

View File

@@ -29,6 +29,9 @@ namespace BlackMisc
class BLACKMISC_EXPORT CDirectoryUtils class BLACKMISC_EXPORT CDirectoryUtils
{ {
public: public:
//! File path and swift application
using FilePerApplication = QMap<QString, CApplicationInfo>;
//! Returns the bin directory. On Windows/Linux this is the same directory as //! Returns the bin directory. On Windows/Linux this is the same directory as
//! QCoreApplication::applicationDirPath(), but on MacOS the exceutable is //! QCoreApplication::applicationDirPath(), but on MacOS the exceutable is
//! located deeper in the hierarchy of the bundles //! located deeper in the hierarchy of the bundles
@@ -59,7 +62,7 @@ namespace BlackMisc
static QStringList applicationDataDirectoryList(bool withoutCurrent = false, bool decodedDirName = false); static QStringList applicationDataDirectoryList(bool withoutCurrent = false, bool decodedDirName = false);
//! swift application data sub directories with info if available //! swift application data sub directories with info if available
static const QMap<QString, CApplicationInfo> &applicationDataDirectoryMapWithoutCurrentVersion(); static const FilePerApplication &applicationDataDirectoryMapWithoutCurrentVersion();
//! Other swift data directories //! Other swift data directories
static bool hasOtherSwiftDataDirectories(); static bool hasOtherSwiftDataDirectories();

View File

@@ -69,6 +69,7 @@ namespace BlackMisc
less = less && ! greater && (a.*member)() < (b.*member)(); less = less && ! greater && (a.*member)() < (b.*member)();
greater = (b.*member)() < (a.*member)(); greater = (b.*member)() < (a.*member)();
}); });
Q_UNUSED(greater); // CPP style check
return less; return less;
}; };
} }

View File

@@ -18,6 +18,7 @@
#include "blackmisc/network/fsdsetup.h" #include "blackmisc/network/fsdsetup.h"
#include "blackmisc/aviation/aircraftsituationchange.h" #include "blackmisc/aviation/aircraftsituationchange.h"
#include "blackmisc/math/mathutils.h" #include "blackmisc/math/mathutils.h"
#include "blackmisc/stringutils.h"
#include "blackconfig/buildconfig.h" #include "blackconfig/buildconfig.h"
#include <QTest> #include <QTest>
@@ -26,6 +27,7 @@
#include <QDebug> #include <QDebug>
using namespace BlackConfig; using namespace BlackConfig;
using namespace BlackMisc;
using namespace BlackMisc::Aviation; using namespace BlackMisc::Aviation;
using namespace BlackMisc::PhysicalQuantities; using namespace BlackMisc::PhysicalQuantities;
using namespace BlackMisc::Network; using namespace BlackMisc::Network;
@@ -215,6 +217,11 @@ namespace BlackMiscTest
const int hint = time.elapsed(); const int hint = time.elapsed();
const double ratio = static_cast<double>(hint) / static_cast<double>(noHint); // expected <0 const double ratio = static_cast<double>(hint) / static_cast<double>(noHint); // expected <0
qDebug() << "MacOS:" << boolToYesNo(CBuildConfig::isRunningOnMacOSPlatform());
qDebug() << "Access without hint" << noHint << "ms";
qDebug() << "Access with hint" << hint << "ms";
qDebug() << "Access ratio" << ratio;
// remark On Win/Linux access with hint is faster // remark On Win/Linux access with hint is faster
// on MacOS the times are the same, maybe with hint it is even slightly slower // on MacOS the times are the same, maybe with hint it is even slightly slower
if (noHint >= hint) if (noHint >= hint)
@@ -227,9 +234,6 @@ namespace BlackMiscTest
} }
} }
qDebug() << "Access without hint" << noHint << "ms";
qDebug() << "Access with hint" << hint << "ms";
qDebug() << "Access ratio" << ratio;
QVERIFY2(hint <= noHint, "Expected hinted sort being faster"); QVERIFY2(hint <= noHint, "Expected hinted sort being faster");
} }
@@ -240,8 +244,8 @@ namespace BlackMiscTest
// "CFB Bagotville","Bagotville","Canada","YBG","CYBG",48.33060073852539,-70.99639892578125,522,-5,"A","America/Toronto","airport","OurAirports" // "CFB Bagotville","Bagotville","Canada","YBG","CYBG",48.33060073852539,-70.99639892578125,522,-5,"A","America/Toronto","airport","OurAirports"
CAircraftSituationList situations; CAircraftSituationList situations;
qint64 ts = QDateTime::currentSecsSinceEpoch(); const qint64 ts = QDateTime::currentSecsSinceEpoch();
qint64 os = CFsdSetup::c_positionTimeOffsetMsec; const qint64 os = CFsdSetup::c_positionTimeOffsetMsec;
CAltitude alt(10000, CAltitude::MeanSeaLevel, CLengthUnit::m()); CAltitude alt(10000, CAltitude::MeanSeaLevel, CLengthUnit::m());
static const CCoordinateGeodetic dummyPos(48.33060073852539, -70.99639892578125, 522); static const CCoordinateGeodetic dummyPos(48.33060073852539, -70.99639892578125, 522);