aboutsummaryrefslogtreecommitdiffstats
path: root/configserver/src/test
diff options
context:
space:
mode:
authorMartin Polden <mpolden@mpolden.no>2022-05-19 14:36:07 +0200
committerMartin Polden <mpolden@mpolden.no>2022-05-19 14:39:18 +0200
commit846352ca619913381ae8d30d0cd5e3f7ab33940f (patch)
treed094d90dcdf935efbfac13504c4a565fae090154 /configserver/src/test
parentc649cd5637b141d4e45243824f07e18e6e03f951 (diff)
Remove resources when deleting application with no active session
Diffstat (limited to 'configserver/src/test')
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java4
-rw-r--r--configserver/src/test/java/com/yahoo/vespa/config/server/MockProvisioner.java8
2 files changed, 7 insertions, 5 deletions
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
index 1ad0765a25f..17a0a2e3cab 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/ApplicationRepositoryTest.java
@@ -333,14 +333,16 @@ public class ApplicationRepositoryTest {
assertTrue(applicationRepository.delete(applicationId()));
assertTrue(applicationRepository.getActiveSession(applicationId()).isEmpty());
assertEquals(Optional.empty(), sessionRepository.getRemoteSession(sessionId).applicationSet());
- assertTrue(provisioner.removed());
+ assertEquals(1, provisioner.removeCount());
assertEquals(tenant().getName(), provisioner.lastApplicationId().tenant());
assertEquals(applicationId(), provisioner.lastApplicationId());
assertTrue(curator.exists(sessionNode));
assertEquals(Session.Status.DELETE.name(), Utf8.toString(curator.getData(sessionNode.append("sessionState")).get()));
assertTrue(sessionFile.exists());
+ // Deleting a non-existent application still attempts to remove resources
assertFalse(applicationRepository.delete(applicationId()));
+ assertEquals(2, provisioner.removeCount());
}
{
diff --git a/configserver/src/test/java/com/yahoo/vespa/config/server/MockProvisioner.java b/configserver/src/test/java/com/yahoo/vespa/config/server/MockProvisioner.java
index f08da1e65c2..0ba3a6d883c 100644
--- a/configserver/src/test/java/com/yahoo/vespa/config/server/MockProvisioner.java
+++ b/configserver/src/test/java/com/yahoo/vespa/config/server/MockProvisioner.java
@@ -23,7 +23,7 @@ import java.util.List;
public class MockProvisioner implements Provisioner {
private boolean activated = false;
- private boolean removed = false;
+ private int removeCount = 0;
private boolean restarted = false;
private ApplicationId lastApplicationId;
private Collection<HostSpec> lastHosts;
@@ -70,7 +70,7 @@ public class MockProvisioner implements Provisioner {
if (failureOnRemove)
throw new IllegalStateException("Unable to remove " + transaction.application());
- removed = true;
+ removeCount++;
lastApplicationId = transaction.application();
}
@@ -94,8 +94,8 @@ public class MockProvisioner implements Provisioner {
return activated;
}
- public boolean removed() {
- return removed;
+ public int removeCount() {
+ return removeCount;
}
public boolean restarted() {