diff --git a/src/main/java/io/visual_regression_tracker/sdk_java/TestRunOptions.java b/src/main/java/io/visual_regression_tracker/sdk_java/TestRunOptions.java index e681faf..a093d49 100755 --- a/src/main/java/io/visual_regression_tracker/sdk_java/TestRunOptions.java +++ b/src/main/java/io/visual_regression_tracker/sdk_java/TestRunOptions.java @@ -4,9 +4,11 @@ import lombok.Builder; import lombok.Getter; +import lombok.ToString; @Builder @Getter +@ToString public class TestRunOptions { private final String os; private final String browser; diff --git a/src/main/java/io/visual_regression_tracker/sdk_java/VisualRegressionTracker.java b/src/main/java/io/visual_regression_tracker/sdk_java/VisualRegressionTracker.java index 3c3f491..bdd56ee 100755 --- a/src/main/java/io/visual_regression_tracker/sdk_java/VisualRegressionTracker.java +++ b/src/main/java/io/visual_regression_tracker/sdk_java/VisualRegressionTracker.java @@ -2,6 +2,7 @@ import com.google.gson.Gson; import io.visual_regression_tracker.sdk_java.request.BuildRequest; +import io.visual_regression_tracker.sdk_java.request.ModifyBuildRequest; import io.visual_regression_tracker.sdk_java.request.TestRunRequest; import io.visual_regression_tracker.sdk_java.response.BuildResponse; import io.visual_regression_tracker.sdk_java.response.TestRunResponse; @@ -81,7 +82,10 @@ public BuildResponse stop() throws IOException, InterruptedException { log.info("Stopping Visual Regression Tracker for buildId <{}>", buildId); - HttpRequest.BodyPublisher body = HttpRequest.BodyPublishers.ofString(""); + ModifyBuildRequest stopBuildRequest = ModifyBuildRequest.builder() + .isRunning(false) + .build(); + HttpRequest.BodyPublisher body = HttpRequest.BodyPublishers.ofString(gson.toJson(stopBuildRequest)); HttpResponse response = getResponse(METHOD.PATCH, paths.getBuildPathForBuild(buildId), body); BuildResponse vrtStopResponse = handleResponse(response, BuildResponse.class); diff --git a/src/main/java/io/visual_regression_tracker/sdk_java/request/ModifyBuildRequest.java b/src/main/java/io/visual_regression_tracker/sdk_java/request/ModifyBuildRequest.java new file mode 100644 index 0000000..075e3b6 --- /dev/null +++ b/src/main/java/io/visual_regression_tracker/sdk_java/request/ModifyBuildRequest.java @@ -0,0 +1,11 @@ +package io.visual_regression_tracker.sdk_java.request; + +import lombok.Builder; +import lombok.Getter; + +@Getter +@Builder +public class ModifyBuildRequest { + private final Boolean isRunning; + private final String ciBuildId; +} diff --git a/src/test/java/io/visual_regression_tracker/sdk_java/VisualRegressionTrackerTest.java b/src/test/java/io/visual_regression_tracker/sdk_java/VisualRegressionTrackerTest.java index e9fcd36..71aa218 100755 --- a/src/test/java/io/visual_regression_tracker/sdk_java/VisualRegressionTrackerTest.java +++ b/src/test/java/io/visual_regression_tracker/sdk_java/VisualRegressionTrackerTest.java @@ -133,6 +133,7 @@ public void shouldStopBuild() throws IOException, InterruptedException { assertThat(recordedRequest.getHeader(VisualRegressionTracker.API_KEY_HEADER), is(config.getApiKey())); assertThat(recordedRequest.getHeader(VisualRegressionTracker.PROJECT_HEADER), is(config.getProject())); assertThat(Objects.requireNonNull(recordedRequest.getRequestUrl()).encodedPath(), containsString(BUILD_ID)); + assertThat(recordedRequest.getBody().readUtf8(), is("{\"isRunning\":false}")); assertThat(actualBuildResponse.isRunning(), is(false)); assertThat(actualBuildResponse.getStatus(), containsString("unresolved")); assertThat(actualBuildResponse.getPassedCount(), is(1));