diff options
author | Jon Marius Venstad <venstad@gmail.com> | 2019-10-23 16:43:35 +0200 |
---|---|---|
committer | Jon Marius Venstad <venstad@gmail.com> | 2019-10-23 16:43:35 +0200 |
commit | dc540d9eb6947990e44b5189dddbf5970a68f208 (patch) | |
tree | 868b783154c3da847e88f76bdc7678d177c069ad | |
parent | c63f649840972999cee918c6f774869679185f60 (diff) |
Add test
-rw-r--r-- | controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/UpgraderTest.java | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/UpgraderTest.java b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/UpgraderTest.java index 1fd51a453fd..d0c67d67842 100644 --- a/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/UpgraderTest.java +++ b/controller-server/src/test/java/com/yahoo/vespa/hosted/controller/maintenance/UpgraderTest.java @@ -1377,4 +1377,25 @@ public class UpgraderTest { assertTrue("Upgrade complete", applications.get().change().isEmpty()); } + @Test + public void testUpgradesPerMinute() { + assertEquals(0, Upgrader.numberOfApplicationsToUpgrade(10, 0, 0)); + + for (long now = 0; now < 60_000; now++) + assertEquals(7, Upgrader.numberOfApplicationsToUpgrade(60_000, now, 7)); + + // Upgrade an app after 8s, 16s, ..., 120s. + assertEquals(3, Upgrader.numberOfApplicationsToUpgrade(30_000, 0, 7.5)); + assertEquals(4, Upgrader.numberOfApplicationsToUpgrade(30_000, 30_000, 7.5)); + assertEquals(4, Upgrader.numberOfApplicationsToUpgrade(30_000, 60_000, 7.5)); + assertEquals(4, Upgrader.numberOfApplicationsToUpgrade(30_000, 90_000, 7.5)); + assertEquals(3, Upgrader.numberOfApplicationsToUpgrade(30_000, 120_000, 7.5)); + + // Run upgrades for 20 minutes. + int upgrades = 0; + for (int i = 0, now = 0; i < 30; i++, now += 40_000) + upgrades += Upgrader.numberOfApplicationsToUpgrade(40_000, now, 8.7); + assertEquals(174, upgrades); + } + } |