summaryrefslogtreecommitdiffstats
path: root/tests/auto
Commit message (Collapse)AuthorAgeFilesLines
* Add regular expression support to replace operationArttu Tarkiainen2019-08-163-1/+192
| | | | | | | | | | Introduce search with regular expressions support to replace operation. Add unit tests and make associated documentation changes. Task-number: QTIFW-889 Change-Id: I82e30056030ebc900be49046fda1903b27a2824d Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Fix update with long version numbersKatja Marttila2019-03-251-1/+5
| | | | | | | | | | Update fails if version number is longer than 32bit int. Fixed so that the value is converted to 64bit int instead so the int overflow will not happen. Change-Id: If7ab57e89b155793e9fab3ba5dad9c734adc2234 Fixes: QTIFW-1310 Reviewed-by: Konstantin Podsvirov <konstantin@podsvirov.pro> Reviewed-by: Samuli Piippo <samuli.piippo@qt.io>
* Replace 0 with nullptrKatja Marttila2019-01-095-18/+18
| | | | | | | Prevents a lot of warnings seen in QtCreator Change-Id: I63bf95aca68a04fc9fd0eecbe29c63e9b9c47efd Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Fix recursive error when there are unstable componentsKatja Marttila2018-09-141-3/+11
| | | | | Change-Id: Iecaf849368904a72bae1a1ca6e51b45cfafb54ef Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Add attribute to mark parts of install tree unstableKatja Marttila2018-04-055-0/+436
| | | | | | | | | | | | This commit adds new AllowUnstableComponents configuration. Setting AllowUnstablecomponents to true in config.xml will * allow installing other components when there are errors in scripts * allow installing other components when there are missing dependencies * will mark the 'broken' components uninstallable in treeview Task-number: QTIFW-930 Change-Id: I8d28cf9c4b0401e0bb76795e87d581f39b64f128 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Add findFiles methodKatja Marttila2018-03-261-0/+28
| | | | | | | Task-number: QTIFW-1094 Change-Id: Ibc37e9b568f7f54e37f6ed6a5b040940cab5aebd Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io> Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Merge remote-tracking branch 'origin/3.0' into masterKatja Marttila2018-02-082-4/+1
|\ | | | | | | Change-Id: I8d0c8b9faa9537b50e989ec264ed7bfe8d2e358b
| * Fix testsKatja Marttila2017-11-082-4/+1
| | | | | | | | | | | | Task-number: QTIFW-1027 Change-Id: I9d153924d0f88a537ddcf87e61cac2c550d6817f Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Add support dash (-) symbol in component nameKonstantin Podsvirov2017-12-053-0/+259
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add colon (:) symbol as alternative separator beetwen component name and version to use dash (-) symbol in component name. For names with dash (-) symbol use colon (:) symbol as separator in dependencies between name and version, even if you do not specify a version. Requirement example: package-with-dash:>=1.2.3, stable:1.x, demo:v1.0-rc1, backward-compatibility:. Also add test 'tst_ComponentIdentifier' for check new feature. Task-number: QTIFW-948 Change-Id: I6340c8001dec369ed8d33fcc4a92c7bce660aec1 Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Allow comparing non-numeric versionsKonstantin Podsvirov2017-11-133-0/+100
| | | | | | | | | | | | | | | | | | | | | | | | Changes: - Improve KDUpdater::compareVersion method; - Add tst_CompareVersion test. Task-number: QTIFW-948 Change-Id: If64f807cfb04e56d2bdd5fa250f456631df3f239 Reviewed-by: André Hartmann <aha_1980@gmx.de> Reviewed-by: Kai Koehne <kai.koehne@qt.io> Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* | Add Component::addAutoDependOn methodKonstantin Podsvirov2017-10-301-3/+7
|/ | | | | | | | | | Changes: - Add addAutoDependOn method to Component class; - Add method documentation; - Improve tst_Solver test. Change-Id: I5ed62368d62567f1056e20d89ba03c2639e0eaee Reviewed-by: Katja Marttila <katja.marttila@qt.io>
* Change 'Checkable' element behaviorKatja Marttila2017-05-221-16/+17
| | | | | | | | Althogh 'Checkable' value is set to package, that can contain packages to install. Enabling the install of components using 'Checkable' value. Change-Id: I05d65fe2da65644872d46bdef3accd5e3f16ad31 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Make installer to check the dependency versionKatja Marttila2017-03-231-1/+39
| | | | | | | | | | | | | | Installer was able to install dependency correctly. However, it ignored the version dependency might have. Dependencies>componentA->=4.0</Dependencies> If there was already a dependency installed with lower version number, the newer version, which was required by the selected component, was not installed. Fixed so that maintenancetool will not only check if the dependency is installed but also the installed version. Change-Id: Ia26b5233cf8847bce73095d19a13c481318d27f2 Task-number: QTIFW-914 Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* Merge remote-tracking branch 'origin/2.0'Katja Marttila2017-01-3019-323/+228
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/installer/lib7z_create.h src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h src/libs/kdtools/localpackagehub.cpp src/libs/kdtools/localpackagehub.h src/libs/kdtools/updatefinder.cpp src/libs/kdtools/updatefinder.h tools/binarycreator/resources/mkdmg.sh Change-Id: Iab2513f549832d2e750e77131c673457ab265af4
| * License header update to GPL-EXCEPTKatja Marttila2017-01-2619-323/+228
| | | | | | | | | | Change-Id: I6426c4e8f932cf26c6c638dec18d0c12e22972d1 Reviewed-by: Janne Anttila <janne.anttila@theqtcompany.com>
* | Make support for modifying installations configurableFrerich Raabe2016-09-142-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch introduces support for a new setting 'SupportsModify' in the config.xml file. This is only relevant for Windows installers. By default (i.e. when omitting) this setting, it defaults to 'true' which means that the product supports modifying (i.e. reconfiguring) an existing installations. As such, the 'Modify' button show in Windows' list of installed programs will be enabled. Setting this to 'false' will cause the button to be disabled. Change-Id: I4105f3f0bce67830aa2ee8ae0e6f6abb25c35b30 Reviewed-by: Karsten Heimrich <karsten.heimrich@qt.io>
* | Fix settings testKatja Marttila2016-06-211-2/+2
| | | | | | | | | | Change-Id: Ifbb9aca0719e670026c6bde910430d96621dd61e Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
* | Merge remote-tracking branch 'origin/2.0'Katja Marttila2016-06-212-5/+13
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: Changelog dist/config/config.xml dist/packages/org.qtproject.ifw.binaries/meta/package.xml dist/packages/org.qtproject.ifw/meta/package.xml installerfw.pri src/libs/7zip/7zip.pro src/libs/7zip/win/CPP/7zip/UI/Common/Update.cpp src/libs/installer/component.cpp src/libs/installer/lib7z_facade.cpp src/libs/installer/packagemanagercore.cpp src/libs/installer/proxycredentialsdialog.h src/sdk/translations/ja.ts tests/auto/installer/messageboxhandler/tst_messageboxhandler.cpp tests/auto/installer/scriptengine/tst_scriptengine.cpp tests/auto/installer/settings/tst_settings.cpp Change-Id: I3bb98b8490b3c3eb7f664c1abb7417155b5430b2
| * Fix settings testKatja Marttila2016-06-201-7/+13
| | | | | | | | | | | | | | | | | | QFile either returns 'Unknown error' or 'No such file or directory' when trying to use non-existing file. Make settings test work with both values. Change-Id: I5245b5ad0cf5b91a7eec61c17315982ce14eecfb Reviewed-by: Iikka Eklund <iikka.eklund@qt.io>
| * Revert "Use QQmlV4Function to correctly get empty parameters from script."Katja Marttila2016-02-173-120/+0
| | | | | | | | | | | | | | | | | | | | | | This reverts commit eb574d77b0ab9a92b61e7738d089cd4ea4304e51. The change will not work with Qt5.5 as it is causing constant crashes in Qt installers. Using this change will require a fix for Qt5. As we are about to make Qt installers based on 2.0 we need to revert this change for now. Change-Id: Ia7906d02db645f2407ab07d14f5a037224574b29 Reviewed-by: Andy Shaw <andy.shaw@theqtcompany.com>
| * Fix compile with namespace'ed Qt.Karsten Heimrich2016-01-211-9/+0
| | | | | | | | | | Change-Id: I9c0d399943d2f6eb9a0ab136abf24a5c8b108abb Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Make usage of authorization fallback optionalSlobodan Vrkacevic2016-05-182-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Asking users to use the authorization fallback in case of authorization errors might be a bit problematic in some cases. If the users are not familiar with the concept, running: "<installer_exe> --startserver PRODUCTION,{GUID},{GUID}" from command line might be confusing or difficult. Also it might not help at all. So let's make this optional. If the config variable DisableAuthorizationFallback is set to true the installer will not ask users to run the authorization fallback but instead it will abort the installation immediately. In RemoteClient this is implemented by adding a new function called setAuthorizationFallbackDisabled. The init function could be also extend for this but the config settings are not loaded at the time when the function is called. Change-Id: I4baf1dea34c5cc0016e98df47a9492ee1418c5ee Reviewed-by: Katja Marttila <katja.marttila@qt.io> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@qt.io>
* | Tests: Fix scriptengine testChristian Stenger2016-03-313-2/+4
| | | | | | | | | | Change-Id: I288f366785c72da49087cb688f7f1247c2494c99 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Make communication via installer.execute() Unicode safeKarsten Heimrich2016-03-305-0/+157
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | It was impossible to pass Unicode data safely to a process started via installer.execute(), or to read Unicode data printed by that process safely back in. The reason for this is that the code hardcoded the latin1 codec for converting between strings used in the script interpreter and bytes used by the QProcessWrapper API. Fix this by adding two new optional arguments to installer.execute() which can be used to define the codec to be used for writing to stdin resp. reading from stdout. This defaults to latin1 for backwards compatibility. Change-Id: I290d8d9617b286ef90b2f0a05c6e7a47f6df317f Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Frerich Raabe <raabe@froglogic.com>
* | Fix failing auto-test.Karsten Heimrich2016-03-231-1/+4
| | | | | | | | | | Change-Id: If948400f15f9dcb43e4f47293ee58428993375f7 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Fix compilation, we depend on network for QLocalSocket.Karsten Heimrich2016-03-231-1/+1
| | | | | | | | | | Change-Id: I1ef2da40f3565abff3f1e4d0f802cfb7c2e4dfdb Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Allow specifying the installer size in 'em' or 'ex' unitsSlobodan Vrkacevic2016-02-296-0/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The WizardDefaultWidth and WizardDefaultHeight configuration settings always expected pixel values. This made the installer look somewhat awkward on high DPI displays, in which case the ratio between the font size and the installer window size was such that the fonts looked very big. Let's fix this by allowing to specify the width/height of the installer using units which are defined in terms of the font size, namely 'em' ("The width of the letter M") and 'ex' ("The width of the letter x"). 'px' is supported as well and means the same thing as not specifying any unit at all: the given size is defined in pixels. We choose to *not* use the font width for 'em' and 'ex' to be consistent with what the Qt CSS parser does (see src/gui/text/qcssparser.cpp), which adheres to what the W3C document at https://www.w3.org/WAI/GL/css2em.htm describes. Change-Id: Iaeb5a29c79d437ef4b956cb318158181f6289ec9 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Leena Miettinen <riitta-leena.miettinen@theqtcompany.com>
* | Fix arguments in RegisterFileTypeKatja Marttila2016-02-293-0/+136
| | | | | | | | | | | | | | | | | | | | When using RegisterFileType, argumens include progId. Removed it from arguments and saved as member variable. This way progId won't interfere argument check count and it can be used also in undo operation. Change-Id: Ic80a54a28b5e171a5d4e3023b58eb1636a16fa49 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix build after merge.Karsten Heimrich2016-01-211-6/+6
| | | | | | | | | | Change-Id: I03b7f65e9a2b5ce16160f9059e70a064e354a6c7 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Merge remote-tracking branch 'origin/2.0'Iikka Eklund2016-01-2021-56/+327
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | Conflicts: installerfw.pri src/libs/kdtools/kdgenericfactory.cpp src/libs/kdtools/kdgenericfactory.h src/libs/kdtools/kdupdaterapplication.cpp src/libs/kdtools/kdupdaterapplication.h src/libs/kdtools/kdupdaterupdatesourcesinfo.cpp src/libs/kdtools/kdupdaterupdatesourcesinfo.h sync.profile Change-Id: Ifdc8b065f89b7e241bd3788ed79768e21888161f
| * Update license headersIikka Eklund2015-12-2920-60/+210
| | | | | | | | | | | | | | | | | | Update existing license headers. LGPL -> LGPLv21. Update copyright year as well. Change-Id: Ie1d71f8c68186b8f625f409ddf94691f178093c9 Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com> Reviewed-by: Jani Heikkinen <jani.heikkinen@theqtcompany.com>
| * Use QQmlV4Function to correctly get empty parameters from script.Karsten Heimrich2015-11-263-0/+121
| | | | | | | | | | | | | | | | | | By using QQmlV4Function to get the parameters, empty strings passed are correctly kept as empty and not null. Task-number: QTIFW-724 Change-Id: I592e2230e574ba82e765bd0079964db29452b2e9 Reviewed-by: Simon Hausmann <simon.hausmann@theqtcompany.com>
* | Allow defining non-checkable itemsKatja Marttila2016-01-182-41/+103
| | | | | | | | | | | | | | | | | | | | | | This change will introduce new element 'Checkable' for package. Setting checkable to false will hide checkbox. Useful if use case is to install one sub item instead of all sub items. Change-Id: I8c731e77353b6da539dddcecdc8495b28ef5f7ea Task-number: QTIFW-773 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com>
* | Fix timezone issue, simply keep the UTC time.Karsten Heimrich2016-01-041-1/+1
| | | | | | | | | | | | | | | | | | | | Since we're the only user of the list archive function, do not convert from UTC. Though once we document the function it should be mentioned that the user needs to convert it (e.g. for display purposes etc...). Change-Id: Icbf8372ddff4f34e3c5a426b983ff25a117d74eb Reviewed-by: Katja Marttila <katja.marttila@theqtcompany.com>
* | Fixed running binarycreator if the temporary directory name contains spacesFrerich Raabe2015-12-081-1/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The binarycreator program fails to generate an archive if the temporary directory name contains spaces. This is not uncommon on Windows since the temporary directory is beneath the home directory, e.g. C:\Users\<username>\AppData\Local\Temp. If the user name contains spaces (as it does in my case, the user name is "Frerich Raabe") binarycreator fails with [64] Warning: QFile::remove: Empty or null file name (C:\Qt\MSVC12\5.5.0-src\qtbase\src\corelib\io\qfile.cpp:498, bool __thiscall QFile::remove(void)) Caught exception: Cannot create archive "C:\Users\Frerich": internal code: E_FAIL This was caused by createArchive() assembling a command line without escaping either the 'target' or any of the 'sources' values. Instead of adding escaping only to split the command line again, let's drop the approach of constructing a command and then splitting it completely. Instead, let's build an array of arguments right away. Change-Id: I284c1b5a27e9edd3717243ea7979149ab2033d64 Task-number: QTIFW-787 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix scriptengine autotestKatja Marttila2015-11-061-2/+2
| | | | | | | | | | | | | | | | | | Was failing in Windows because NativeSeparators was not taken into account when verifying the error message Change-Id: I79c17ad91875918501d84b102d16f84bb2008038 Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Compile with namespaces.Karsten Heimrich2015-09-071-0/+2
| | | | | | | | | | | | Change-Id: I734b0e27d53fd8b6199a3fb5891497df0e1815bb Reviewed-by: Iikka Eklund <iikka.eklund@theqtcompany.com> Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Missed to rename classes and to update docs and tests.Karsten Heimrich2015-09-071-3/+3
| | | | | | | | | | Change-Id: I2d79ab4094cb9706287d44160543c19b35a66c95 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com>
* | Compile.Karsten Heimrich2015-07-141-1/+1
| | | | | | | | | | Change-Id: I130d79d0f814f2b8237a24b340ba96d44c92b428 Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Rename files. Remove {kd} prefix. Remove {kdupdater} prefix.Karsten Heimrich2015-07-144-4/+4
| | | | | | | | | | Change-Id: I88c93cab718f4659296d5f7f562beefd747a366f Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Make use of the new varadic template feature + cosmetic changes.Karsten Heimrich2015-07-105-26/+24
| | | | | | | | | | | | | | | | Change constructor to take the a package manager argument. Add a package manager member to the operation. Remove setter function. Change-Id: Iffb860e24089beb6496ac4ee479d547a29463728 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Add factory auto test. Update template parameter + documentation.Karsten Heimrich2015-07-103-1/+235
| | | | | | | | | | | | | | | | The create function cannot be documented properly, cause qdoc does not understand the ellipsis(...) operator as of right now. Change-Id: I6569372ed37621eeaaa7a41ea49aa795676ca65b Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Sanitize QDebug outputKai Koehne2015-07-094-34/+30
| | | | | | | | | | | | | | | | | | | | | | | | Prefer using the stream operator logic instead of using QString::fromLatin1. Add a noquote() where a QString should be printed without any quotes/escapes. This also fixes the tests with Qt 5.5, where QString's are further escaped. Change-Id: Ie3afd14b9355101d3c0b52f30f66ec759c76526c Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix error strings in autotestsKai Koehne2015-06-246-14/+14
| | | | | | | | | | | | | | | | Fix autotests that broke with commit 1e589e37a991b. Change-Id: I2c0ed437de17fef856706fb3e422f3466c373c37 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Christian Stenger <christian.stenger@theqtcompany.com>
* | Unify translated error messagesKai Koehne2015-06-248-16/+16
| | | | | | | | | | | | | | | | | | | | | | | | * Enclose file paths in "" * Localize file paths with QDir::toNativeSeparators. * Make sure sentences end with a '.' * Append error details always by ':', e.g. tr("Failed to copy file '%1': %2").(...) * Use 'directory' instead of 'folder' everywhere Change-Id: Ie045f429f72ad5045c96537465c5fb9d2e99d250 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Follow description on MSDN to implement time utils.Karsten Heimrich2015-06-231-3/+0
| | | | | | | | | | | | Task-number: QTIFW-445 Change-Id: I8c3bc221f57043cc876f1927edf0d591303b5687 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>
* | Convert to Qt 5 connect syntaxKai Koehne2015-06-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | Convert to new signal/slot syntax where it does not make things more complicated: connections where the signal or slot is an overloaded method, or where the receiver method is not in a QObject, are left alone. The new syntax allows compile-time checking of the connection. Change-Id: I2cc3c93b9812797bd67f64a8728569491eeec668 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com> Reviewed-by: Jarek Kobus <jaroslaw.kobus@theqtcompany.com>
* | Remove signal finished() overloadKai Koehne2015-06-111-6/+1
| | | | | | | | | | | | | | | | The overload is deprecated in Qt, but can't be removed due to BC issues. We can remove it though. Change-Id: Iceaf7ca772ec7be6347b675fa62acad918afc8b0 Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Fix autotests for changed debug outputKai Koehne2015-06-104-28/+4
| | | | | | | | | | | | | | | | | | Commit fa5f7c662841b1d13f6610db8817608a24e3a3f6 removed the printing of exceptions on creation. Fix autotests accordingly. Change-Id: Id715b194f893016d23d7e2accf4b131a40a3f906 Reviewed-by: Niels Weber <niels.weber@theqtcompany.com> Reviewed-by: Karsten Heimrich <karsten.heimrich@theqtcompany.com>
* | Split the huge header file in more dedicated ones.Karsten Heimrich2015-06-101-0/+3
| | | | | | | | | | Change-Id: I35a1500d5a9bb8986765488660cf0487c32d9720 Reviewed-by: Kai Koehne <kai.koehne@theqtcompany.com>