diff options
author | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-04-07 14:35:24 +0300 |
---|---|---|
committer | Arttu Tarkiainen <arttu.tarkiainen@qt.io> | 2020-04-08 15:17:54 +0300 |
commit | 3d402f1c16c8ad5d97f5e5eb03ebb0e000d74e1b (patch) | |
tree | 00e34c78c51a119628caa56e8896df3c38f499d3 /src | |
parent | 39fc2b00fa981d3f67b8c142d59f69e2dddfa1e3 (diff) |
Fix bugs in InstallIconsOperation and add unit tests
- Fix conflicting naming and reference of operation value in
InstallIconsOperation::targetDirectory().
- Fix bug related to appending of "icons" suffix to paths in
XDG_DATA_HOME, the logic was glued to old default values which have
been since changed.
- Remove unused variable in class destructor and remove unneeded
default implementation.
Also add unit and CLI tests for InstallIconsOperation and move
addToFileMap() to common functions so it can be used in multiple tests.
Task-number: QTIFW-1715
Task-number: QTIFW-1465
Change-Id: I5281ca7a5dec1453f49fbe2cb2852d6467bf0c97
Reviewed-by: Katja Marttila <katja.marttila@qt.io>
Diffstat (limited to 'src')
-rw-r--r-- | src/libs/installer/installiconsoperation.cpp | 19 | ||||
-rw-r--r-- | src/libs/installer/installiconsoperation.h | 3 |
2 files changed, 6 insertions, 16 deletions
diff --git a/src/libs/installer/installiconsoperation.cpp b/src/libs/installer/installiconsoperation.cpp index 7b02bb964..08ac6e8d5 100644 --- a/src/libs/installer/installiconsoperation.cpp +++ b/src/libs/installer/installiconsoperation.cpp @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Installer Framework. @@ -40,13 +40,13 @@ using namespace QInstaller; QString InstallIconsOperation::targetDirectory() { // we're not searching for the first time, let's re-use the old value - if (hasValue(QLatin1String("targetdirectory"))) - return value(QLatin1String("targetdirectory")).toString(); + if (hasValue(QLatin1String("directory"))) + return value(QLatin1String("directory")).toString(); QStringList XDG_DATA_HOME = QString::fromLocal8Bit(qgetenv("XDG_DATA_HOME")) .split(QLatin1Char(':'), QString::SkipEmptyParts); - XDG_DATA_HOME.push_back(QDir::home().absoluteFilePath(QLatin1String(".local/share/icons"))); // default path + XDG_DATA_HOME.push_back(QDir::home().absoluteFilePath(QLatin1String(".local/share"))); // default path QString directory; const QStringList& directories = XDG_DATA_HOME; @@ -54,11 +54,7 @@ QString InstallIconsOperation::targetDirectory() if (it->isEmpty()) continue; - // our default dirs are correct, XDG_DATA_HOME set via env needs "icon" at the end - if ((it + 1 == directories.end()) || (it + 2 == directories.end()) || (it + 3 == directories.end())) - directory = QDir(*it).absolutePath(); - else - directory = QDir(*it).absoluteFilePath(QLatin1String("icons")); + directory = QDir(*it).absoluteFilePath(QLatin1String("icons")); QDir dir(directory); // let's see if this dir exists or we're able to create it @@ -90,11 +86,6 @@ InstallIconsOperation::InstallIconsOperation(PackageManagerCore *core) setName(QLatin1String("InstallIcons")); } -InstallIconsOperation::~InstallIconsOperation() -{ - const QStringList backupFiles = value(QLatin1String("backupfiles")).toStringList(); -} - void InstallIconsOperation::backup() { // we backup on the fly diff --git a/src/libs/installer/installiconsoperation.h b/src/libs/installer/installiconsoperation.h index 5f8dff514..7a4d1cc90 100644 --- a/src/libs/installer/installiconsoperation.h +++ b/src/libs/installer/installiconsoperation.h @@ -1,6 +1,6 @@ /************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2020 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Qt Installer Framework. @@ -40,7 +40,6 @@ class INSTALLER_EXPORT InstallIconsOperation : public QObject, public Operation Q_OBJECT public: explicit InstallIconsOperation(PackageManagerCore *core); - ~InstallIconsOperation(); void backup(); bool performOperation(); |