summaryrefslogtreecommitdiffstats
path: root/tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp')
-rw-r--r--tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp74
1 files changed, 59 insertions, 15 deletions
diff --git a/tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp b/tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp
index 8d223ae09..7a61e9608 100644
--- a/tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp
+++ b/tests/auto/installer/commandlineupdate/tst_commandlineupdate.cpp
@@ -60,50 +60,93 @@ private slots:
core = PackageManager::getPackageManagerWithInit(m_installDir);
}
- void testUpdatePackageSilently()
+ void testInstallWhenEssentialUpdate()
{
setRepository(":///data/installPackagesRepository");
- core->installSelectedComponentsSilently(QStringList() << "componentA" << "componentB");
+ QCOMPARE(PackageManagerCore::Success, core->installSelectedComponentsSilently(QStringList()
+ << "componentA"));
+ QCOMPARE(PackageManagerCore::Success, core->status());
VerifyInstaller::verifyInstallerResources(m_installDir, "componentA", "1.0.0content.txt");
- VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "1.0.0content.txt");
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentE", "1.0.0content.txt");
+ VerifyInstaller::verifyFileExistence(m_installDir, QStringList() << "components.xml" << "installcontent.txt"
+ << "installcontentA.txt" << "installcontentE.txt" << "installcontentG.txt");
+ core->commitSessionOperations();
+ core->setPackageManager();
+ setRepository(":///data/installPackagesRepositoryUpdate");
+ QCOMPARE(PackageManagerCore::ForceUpdate, core->installSelectedComponentsSilently(QStringList()
+ << "componentB"));
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentA", "1.0.0content.txt");
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentE", "1.0.0content.txt");
VerifyInstaller::verifyFileExistence(m_installDir, QStringList() << "components.xml" << "installcontent.txt"
- << "installcontentA.txt" << "installcontentE.txt" << "installcontentG.txt"
- << "installcontentB.txt" << "installcontentD.txt");
+ << "installcontentA.txt" << "installcontentE.txt" << "installcontentG.txt");
+ }
+
+ void testUpdateEssentialPackageSilently()
+ {
+ QCOMPARE(PackageManagerCore::EssentialUpdated, core->updateComponentsSilently(QStringList()));
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentA", "2.0.0content.txt");
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentE", "1.0.0content.txt");
+ //Because of bug QTIFW-1970 componentD got installed too
+ VerifyInstaller::verifyFileExistence(m_installDir, QStringList() << "components.xml"
+ << "installcontentA_update.txt" << "installcontentE.txt" << "installcontentG.txt"
+ << "installcontentD_update.txt");
+ VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentA", "1.0.0content.txt");
+ //As we are using the same core in tests, clean the essentalupdate value
+ core->setFoundEssentialUpdate(false);
+ }
+
+ void testUpdatePackageSilently()
+ {
+ setRepository(":///data/installPackagesRepository");
+ QCOMPARE(PackageManagerCore::Success, core->installSelectedComponentsSilently(QStringList()
+ << "componentB"));
+ QCOMPARE(PackageManagerCore::Success, core->status());
+ //Because of bug QTIFW-1970 componentD got uninstalled. It should be installed now
+ //as its dependencies are installed.
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentA", "2.0.0content.txt");
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "1.0.0content.txt");
+ VerifyInstaller::verifyFileExistence(m_installDir, QStringList() << "components.xml"
+ << "installcontentA_update.txt" << "installcontentE.txt" << "installcontentG.txt"
+ << "installcontentB.txt");
core->commitSessionOperations();
setRepository(":///data/installPackagesRepositoryUpdate");
- core->updateComponentsSilently(QStringList() << "componentA");
+ QCOMPARE(PackageManagerCore::Success, core->updateComponentsSilently(QStringList()
+ << "componentB"));
// componentD is autodependent and cannot be deselected
// componentE is a forced component and thus will be updated
VerifyInstaller::verifyInstallerResources(m_installDir, "componentA", "2.0.0content.txt");
- VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "1.0.0content.txt");
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentD", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentE", "2.0.0content.txt");
- VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentA", "1.0.0content.txt");
+
VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentD", "1.0.0content.txt");
VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentE", "1.0.0content.txt");
VerifyInstaller::verifyFileExistence(m_installDir, QStringList() << "components.xml" << "installcontentA_update.txt"
<< "installcontentE_update.txt" << "installcontentG.txt"
- << "installcontentB.txt" << "installcontentD_update.txt");
+ << "installcontentB_update.txt" << "installcontentD_update.txt");
}
void testUpdateNoUpdatesForSelectedPackage()
{
setRepository(":///data/installPackagesRepositoryUpdate");
// Succeeds as no updates available for component so nothing to do
- QVERIFY(core->updateComponentsSilently(QStringList() << "componentInvalid"));
+ QCOMPARE(PackageManagerCore::Success, core->updateComponentsSilently(QStringList()
+ << "componentInvalid"));
}
void testUpdateTwoPackageSilently()
{
setRepository(":///data/installPackagesRepository");
- core->installSelectedComponentsSilently(QStringList() << "componentA" << "componentB" << "componentG");
- VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "1.0.0content.txt");
+ QCOMPARE(PackageManagerCore::Success, core->installSelectedComponentsSilently(QStringList()
+ << "componentA" << "componentB" << "componentG"));
+ VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentG", "1.0.0content.txt");
core->commitSessionOperations();
setRepository(":///data/installPackagesRepositoryUpdate");
- core->updateComponentsSilently(QStringList() << "componentB" << "componentG");
+ QCOMPARE(PackageManagerCore::Success, core->updateComponentsSilently(QStringList()
+ << "componentB" << "componentG"));
VerifyInstaller::verifyInstallerResources(m_installDir, "componentB", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentG", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentB", "1.0.0content.txt");
@@ -113,7 +156,8 @@ private slots:
void testUpdateAllPackagesSilently()
{
setRepository(":///data/installPackagesRepository");
- core->installSelectedComponentsSilently(QStringList() << "componentA" << "componentB" << "componentG" << "componentF");
+ QCOMPARE(PackageManagerCore::Success, core->installSelectedComponentsSilently(QStringList()
+ << "componentA" << "componentB" << "componentG" << "componentF"));
VerifyInstaller::verifyInstallerResources(m_installDir, "componentF", "1.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentF.subcomponent1", "1.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentF.subcomponent1.subsubcomponent1", "1.0.0content.txt");
@@ -121,7 +165,7 @@ private slots:
core->commitSessionOperations();
setRepository(":///data/installPackagesRepositoryUpdate");
- core->updateComponentsSilently(QStringList());
+ QCOMPARE(PackageManagerCore::Success, core->updateComponentsSilently(QStringList()));
VerifyInstaller::verifyInstallerResources(m_installDir, "componentF", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResources(m_installDir, "componentF.subcomponent2", "2.0.0content.txt");
VerifyInstaller::verifyInstallerResourceFileDeletion(m_installDir, "componentF", "1.0.0content.txt");