mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
upgrade: add unit tests from/to a security release (#8870)
* upgrade: add unit tests from/to a security release * upgrade: add unit test from a old security release to a new security release
This commit is contained in:
parent
ff3e9bd821
commit
7a9985b42b
@ -223,4 +223,87 @@ public class DatabaseUpgradeCheckerTest {
|
|||||||
assertEquals("We should have 1 upgrade step", 1, upgrades.length);
|
assertEquals("We should have 1 upgrade step", 1, upgrades.length);
|
||||||
assertTrue(upgrades[0] instanceof NoopDbUpgrade);
|
assertTrue(upgrades[0] instanceof NoopDbUpgrade);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCalculateUpgradePathFrom41800toNextSecurityRelease() {
|
||||||
|
|
||||||
|
final CloudStackVersion dbVersion = CloudStackVersion.parse("4.18.0.0");
|
||||||
|
assertNotNull(dbVersion);
|
||||||
|
|
||||||
|
final DatabaseUpgradeChecker checker = new DatabaseUpgradeChecker();
|
||||||
|
final CloudStackVersion currentVersion = checker.getLatestVersion();
|
||||||
|
assertNotNull(currentVersion);
|
||||||
|
|
||||||
|
final DbUpgrade[] upgrades = checker.calculateUpgradePath(dbVersion, currentVersion);
|
||||||
|
assertNotNull(upgrades);
|
||||||
|
|
||||||
|
final CloudStackVersion nextSecurityRelease = CloudStackVersion.parse(currentVersion.getMajorRelease() + "."
|
||||||
|
+ currentVersion.getMinorRelease() + "."
|
||||||
|
+ currentVersion.getPatchRelease() + "."
|
||||||
|
+ (currentVersion.getSecurityRelease() + 1));
|
||||||
|
assertNotNull(nextSecurityRelease);
|
||||||
|
|
||||||
|
final DbUpgrade[] upgradesToNext = checker.calculateUpgradePath(dbVersion, nextSecurityRelease);
|
||||||
|
assertNotNull(upgradesToNext);
|
||||||
|
|
||||||
|
assertEquals(upgrades.length + 1, upgradesToNext.length);
|
||||||
|
assertTrue(upgradesToNext[upgradesToNext.length - 1] instanceof NoopDbUpgrade);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCalculateUpgradePathFromSecurityReleaseToLatest() {
|
||||||
|
|
||||||
|
final CloudStackVersion dbVersion = CloudStackVersion.parse("4.17.2.0"); // a EOL version
|
||||||
|
assertNotNull(dbVersion);
|
||||||
|
|
||||||
|
final CloudStackVersion oldSecurityRelease = CloudStackVersion.parse(dbVersion.getMajorRelease() + "."
|
||||||
|
+ dbVersion.getMinorRelease() + "."
|
||||||
|
+ dbVersion.getPatchRelease() + "."
|
||||||
|
+ (dbVersion.getSecurityRelease() + 100));
|
||||||
|
assertNotNull(oldSecurityRelease); // fake security release 4.17.2.100
|
||||||
|
|
||||||
|
final DatabaseUpgradeChecker checker = new DatabaseUpgradeChecker();
|
||||||
|
final CloudStackVersion currentVersion = checker.getLatestVersion();
|
||||||
|
assertNotNull(currentVersion);
|
||||||
|
|
||||||
|
final DbUpgrade[] upgrades = checker.calculateUpgradePath(dbVersion, currentVersion);
|
||||||
|
assertNotNull(upgrades);
|
||||||
|
|
||||||
|
final DbUpgrade[] upgradesFromSecurityRelease = checker.calculateUpgradePath(oldSecurityRelease, currentVersion);
|
||||||
|
assertNotNull(upgradesFromSecurityRelease);
|
||||||
|
|
||||||
|
assertEquals("The upgrade paths should be the same", upgrades.length, upgradesFromSecurityRelease.length);
|
||||||
|
}
|
||||||
|
|
||||||
|
@Test
|
||||||
|
public void testCalculateUpgradePathFromSecurityReleaseToNextSecurityRelease() {
|
||||||
|
|
||||||
|
final CloudStackVersion dbVersion = CloudStackVersion.parse("4.17.2.0"); // a EOL version
|
||||||
|
assertNotNull(dbVersion);
|
||||||
|
|
||||||
|
final CloudStackVersion oldSecurityRelease = CloudStackVersion.parse(dbVersion.getMajorRelease() + "."
|
||||||
|
+ dbVersion.getMinorRelease() + "."
|
||||||
|
+ dbVersion.getPatchRelease() + "."
|
||||||
|
+ (dbVersion.getSecurityRelease() + 100));
|
||||||
|
assertNotNull(oldSecurityRelease); // fake security release 4.17.2.100
|
||||||
|
|
||||||
|
final DatabaseUpgradeChecker checker = new DatabaseUpgradeChecker();
|
||||||
|
final CloudStackVersion currentVersion = checker.getLatestVersion();
|
||||||
|
assertNotNull(currentVersion);
|
||||||
|
|
||||||
|
final CloudStackVersion nextSecurityRelease = CloudStackVersion.parse(currentVersion.getMajorRelease() + "."
|
||||||
|
+ currentVersion.getMinorRelease() + "."
|
||||||
|
+ currentVersion.getPatchRelease() + "."
|
||||||
|
+ (currentVersion.getSecurityRelease() + 1));
|
||||||
|
assertNotNull(nextSecurityRelease); // fake security release
|
||||||
|
|
||||||
|
final DbUpgrade[] upgrades = checker.calculateUpgradePath(dbVersion, currentVersion);
|
||||||
|
assertNotNull(upgrades);
|
||||||
|
|
||||||
|
final DbUpgrade[] upgradesFromSecurityReleaseToNext = checker.calculateUpgradePath(oldSecurityRelease, nextSecurityRelease);
|
||||||
|
assertNotNull(upgradesFromSecurityReleaseToNext);
|
||||||
|
|
||||||
|
assertEquals(upgrades.length + 1, upgradesFromSecurityReleaseToNext.length);
|
||||||
|
assertTrue(upgradesFromSecurityReleaseToNext[upgradesFromSecurityReleaseToNext.length - 1] instanceof NoopDbUpgrade);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user