summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKatja Marttila <katja.marttila@qt.io>2019-11-27 14:01:43 +0000
committerKatja Marttila <katja.marttila@qt.io>2019-11-28 08:43:49 +0000
commitcb7667dd05766605a2bc63b4b2219799ca0ffa81 (patch)
treea21a702e19d34e9c847317b5d4c0dcff86f60818
parentecd7fdf878f61485e3a8d159dee9cf8c6ba48869 (diff)
Revert "Fix addDependency functionality"
This reverts commit 7dd35b336fbaa78e5f3b347c5e1875743d146fb0. Reason for revert: Change was causing a recursion error. Change-Id: I273a92fbb3292f33d5e0860085102f6e5cc90e13 Reviewed-by: Jani Heikkinen <jani.heikkinen@qt.io>
-rw-r--r--src/libs/installer/installercalculator.cpp8
-rw-r--r--tests/auto/installer/solver/tst_solver.cpp25
2 files changed, 6 insertions, 27 deletions
diff --git a/src/libs/installer/installercalculator.cpp b/src/libs/installer/installercalculator.cpp
index a35cb99fb..db1f88563 100644
--- a/src/libs/installer/installercalculator.cpp
+++ b/src/libs/installer/installercalculator.cpp
@@ -158,14 +158,6 @@ bool InstallerCalculator::appendComponentsToInstall(const QList<Component *> &co
bool InstallerCalculator::appendComponentToInstall(Component *component, const QString &version)
{
QSet<QString> allDependencies = component->dependencies().toSet();
- // All parents are kind of dependencies as well. If we select sub item in treeview, parent gets
- // checked or partially checked as well. When adding component as dependency in script or
- // config.xml we need to add the parent as dependency so the behavior is the same as in visual UI.
- if (component->parentComponent() &&
- !allDependencies.contains(component->parentComponent()->name()) &&
- !m_visitedComponents.contains(component->parentComponent())) {
- allDependencies.insert(component->parentComponent()->name());
- }
QString requiredDependencyVersion = version;
foreach (const QString &dependencyComponentName, allDependencies) {
// PackageManagerCore::componentByName returns 0 if dependencyComponentName contains a
diff --git a/tests/auto/installer/solver/tst_solver.cpp b/tests/auto/installer/solver/tst_solver.cpp
index 139aa7581..d1c3aaa14 100644
--- a/tests/auto/installer/solver/tst_solver.cpp
+++ b/tests/auto/installer/solver/tst_solver.cpp
@@ -153,17 +153,13 @@ private slots:
NamedComponent *componentA = new NamedComponent(core, QLatin1String("A"));
NamedComponent *componentAA = new NamedComponent(core, QLatin1String("A.A"));
NamedComponent *componentAB = new NamedComponent(core, QLatin1String("A.B"));
- NamedComponent *componentABC = new NamedComponent(core, QLatin1String("A.B.C"));
- NamedComponent *componentABD = new NamedComponent(core, QLatin1String("A.B.D"));
componentA->appendComponent(componentAA);
componentA->appendComponent(componentAB);
- componentAB->appendComponent(componentABC);
- componentAB->appendComponent(componentABD);
NamedComponent *componentB = new NamedComponent(core, QLatin1String("B"));
NamedComponent *componentB_NewVersion = new NamedComponent(core, QLatin1String("B_version"), QLatin1String("2.0.0"));
NamedComponent *componentB_Auto = new NamedComponent(core, QLatin1String("B_auto"));
- componentB->addDependency(QLatin1String("A.B.C"));
- componentABC->addDependency(QLatin1String("B_version->=2.0.0"));
+ componentB->addDependency(QLatin1String("A.B"));
+ componentAB->addDependency(QLatin1String("B_version->=2.0.0"));
componentB_Auto->addAutoDependOn(QLatin1String("B_version"));
core->appendRootComponent(componentA);
core->appendRootComponent(componentB);
@@ -172,12 +168,10 @@ private slots:
QTest::newRow("Installer resolved") << core
<< (QList<Component *>() << componentB)
- << (QList<Component *>() << componentA << componentAB << componentABC << componentB_NewVersion << componentB << componentB_Auto)
+ << (QList<Component *>() << componentB_NewVersion << componentAB << componentB << componentB_Auto)
<< (QList<int>()
<< InstallerCalculator::Dependent
<< InstallerCalculator::Dependent
- << InstallerCalculator::Dependent
- << InstallerCalculator::Dependent
<< InstallerCalculator::Resolved
<< InstallerCalculator::Automatic);
}
@@ -192,19 +186,12 @@ private slots:
InstallerCalculator calc(core->components(PackageManagerCore::ComponentType::AllNoReplacements));
calc.appendComponentsToInstall(selectedComponents);
QList<Component *> result = calc.orderedComponentsToInstall();
- int results = 0;
+
QCOMPARE(result.count(), expectedResult.count());
for (int i = 0; i < result.count(); i++) {
- if (result.contains(expectedResult.at(i))) {
- int index = result.indexOf(expectedResult.at(i));
- QCOMPARE(result.at(index), expectedResult.at(i));
- QCOMPARE((int)calc.installReasonType(result.at(index)), installReason.at(i));
- results++;
- }
+ QCOMPARE(result.at(i), expectedResult.at(i));
+ QCOMPARE((int)calc.installReasonType(result.at(i)), installReason.at(i));
}
- // Check that we have found all expected results. Install order may vary
- // for dependent components so we cannot do a direct compare
- QCOMPARE(result.count(), results);
delete core;
}