Ref T210, moved "guess" into CApplicationInfo

* core unit test, set correct type
* guess application type now in CApplicationInfo
This commit is contained in:
Klaus Basan
2017-12-19 21:02:38 +01:00
parent cb751306f8
commit 8b74acb3a9
5 changed files with 27 additions and 20 deletions

View File

@@ -17,10 +17,15 @@ namespace BlackMisc
CApplicationInfo::CApplicationInfo(Application app, const QString &exePath, const QString &version, const CProcessInfo &process) :
m_app(app),
m_exePath(exePath),
m_exePath(exePath.isEmpty() ? QCoreApplication::applicationDirPath() : exePath),
m_version(version),
m_process(process)
{}
{
if (app == CApplicationInfo::Unknown)
{
m_app = guessApplication();
}
}
bool CApplicationInfo::isSampleOrUnitTest() const
{
@@ -62,4 +67,16 @@ namespace BlackMisc
static const QString s("swift core");
return s;
}
CApplicationInfo::Application CApplicationInfo::guessApplication()
{
const QString a(QCoreApplication::instance()->applicationName().toLower());
if (a.contains("test")) { return CApplicationInfo::UnitTest; } // names like testcore
if (a.contains("sample")) { return CApplicationInfo::Sample; }
if (a.contains("core")) { return CApplicationInfo::PilotClientCore; }
if (a.contains("launcher")) { return CApplicationInfo::Laucher; }
if (a.contains("gui")) { return CApplicationInfo::PilotClientGui; }
if (a.contains("data") || a.contains("mapping")) { return CApplicationInfo::MappingTool; }
return CApplicationInfo::Unknown;
}
}