From e48c11a80ad6beed5cc079bb4c317c74ad655aac Mon Sep 17 00:00:00 2001 From: Remy Duijsens Date: Wed, 2 Sep 2026 21:41:52 +0200 Subject: [PATCH] test(cluster): await completed follower convergence --- .../featureframework/cluster/ReplicaControllerTest.java | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/featureframework-cluster/src/test/java/nl/hauntedmc/featureframework/cluster/ReplicaControllerTest.java b/featureframework-cluster/src/test/java/nl/hauntedmc/featureframework/cluster/ReplicaControllerTest.java index 6e19c89..030eeef 100644 --- a/featureframework-cluster/src/test/java/nl/hauntedmc/featureframework/cluster/ReplicaControllerTest.java +++ b/featureframework-cluster/src/test/java/nl/hauntedmc/featureframework/cluster/ReplicaControllerTest.java @@ -134,8 +134,10 @@ void followerConvergesThenBacksUpAndRepairsFilesystemDrift() throws Exception { controller.afterHostStarted(); repository.seed(generation(2, "two", "1", OptionalLong.empty()), true); - await(() -> fileEquals(temp.resolve("config.yml"), "two")); - assertTrue(host.reconcileCalls.get() >= 1); + await(() -> fileEquals(temp.resolve("config.yml"), "two") + && host.reconcileCalls.get() >= 1 + && controller.status().appliedGeneration().orElse(0L) == 2L); + assertEquals(ReplicaStatus.State.READY, controller.status().state()); Files.writeString(temp.resolve("config.yml"), "manual-drift"); await(() -> fileEquals(temp.resolve("config.yml"), "two") @@ -440,4 +442,4 @@ public CompletionStage recordNodeState( return CompletableFuture.completedFuture(null); } } -} \ No newline at end of file +}