From 500662f7062c42af0d2459d39d9f3f04d2ed3817 Mon Sep 17 00:00:00 2001 From: Miles-Garnsey Date: Tue, 17 Jan 2023 17:49:42 +1100 Subject: [PATCH] Fix test logic so that repair runs > 1 are aborted and repair run 1 is paused. --- .../acceptance/BasicSteps.java | 29 +++++++++++++------ 1 file changed, 20 insertions(+), 9 deletions(-) diff --git a/src/server/src/test/java/io/cassandrareaper/acceptance/BasicSteps.java b/src/server/src/test/java/io/cassandrareaper/acceptance/BasicSteps.java index c3f07ee81..77ccc9744 100644 --- a/src/server/src/test/java/io/cassandrareaper/acceptance/BasicSteps.java +++ b/src/server/src/test/java/io/cassandrareaper/acceptance/BasicSteps.java @@ -2917,7 +2917,7 @@ public void addAndAbortRepairs(String clusterName, String keyspace) throws Throw .withFailMessage(responseData); UUID id = UUID.randomUUID(); try { - RepairRun repairRun = new ObjectMapper().readValue(responseData, RepairRun.class); + RepairRunStatus repairRun = new ObjectMapper().readValue(responseData, RepairRunStatus.class); id = repairRun.getId(); testContext.addCurrentRepairId(id); } catch (Throwable e) { @@ -2925,14 +2925,25 @@ public void addAndAbortRepairs(String clusterName, String keyspace) throws Throw LOG.error("Response data was: {}", responseData); Assertions.fail("response deserialisation failed"); } - response = RUNNERS.get(0).callReaper( - "PUT", - String.format("/%s/state/%s", id.toString(), "ABORTED"), - Optional.empty()); - Assertions - .assertThat(response.getStatus()) - .isEqualTo(Response.Status.OK.getStatusCode()) - .withFailMessage(responseData); + if (iter > 1) { + response = RUNNERS.get(0).callReaper( + "PUT", + String.format("/%s/state/%s", id.toString(), "ABORTED"), + Optional.empty()); + Assertions + .assertThat(response.getStatus()) + .isEqualTo(Response.Status.OK.getStatusCode()) + .withFailMessage(responseData); + } else { + response = RUNNERS.get(0).callReaper( + "PUT", + String.format("/%s/state/%s", id.toString(), "PAUSED"), + Optional.empty()); + Assertions + .assertThat(response.getStatus()) + .isEqualTo(Response.Status.OK.getStatusCode()) + .withFailMessage(responseData); + } iter = iter ++; }; }