From b1e6c2f301e502a04f44057a9ec7b3fca7629f15 Mon Sep 17 00:00:00 2001 From: Marcin Grzejszczak Date: Mon, 23 Oct 2017 13:51:59 +0200 Subject: [PATCH] Put is working --- .../cloud/release/internal/sagan/Project.java | 6 +- .../cloud/release/internal/sagan/Release.java | 4 + .../release/internal/sagan/ReleaseUpdate.java | 5 + .../release/internal/sagan/Repository.java | 6 +- .../sagan/RestTemplateSaganClient.java | 23 ++-- .../release/internal/sagan/SaganClient.java | 4 +- .../release/internal/sagan/SaganUpdater.java | 3 +- .../sagan/RestTemplateSaganClientTests.java | 106 ++++++++++++++---- .../internal/sagan/SaganUpdaterTest.java | 19 ++-- .../internal/spring/AcceptanceTests.java | 12 +- 10 files changed, 141 insertions(+), 47 deletions(-) diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Project.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Project.java index 0cf2652a..6db59592 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Project.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Project.java @@ -3,9 +3,13 @@ package org.springframework.cloud.release.internal.sagan; import java.util.ArrayList; import java.util.List; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + /** * @author Marcin Grzejszczak */ +@JsonInclude(value = JsonInclude.Include.NON_NULL) public class Project { public String id = ""; public String name = ""; @@ -15,7 +19,7 @@ public class Project { public String stackOverflowTags; public List projectReleases = new ArrayList<>(); public List stackOverflowTagList = new ArrayList<>(); - public boolean aggregator; + public Boolean aggregator; @Override public String toString() { return "Project{" + "id='" + id + '\'' + ", name='" + name + '\'' + ", repoUrl='" diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Release.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Release.java index 655298ec..9ff85d13 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Release.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Release.java @@ -1,8 +1,12 @@ package org.springframework.cloud.release.internal.sagan; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + /** * @author Marcin Grzejszczak */ +@JsonInclude(value = JsonInclude.Include.NON_NULL) public class Release { public String releaseStatus = ""; public String refDocUrl = ""; diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/ReleaseUpdate.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/ReleaseUpdate.java index 2a3cce57..a261e33c 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/ReleaseUpdate.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/ReleaseUpdate.java @@ -1,8 +1,12 @@ package org.springframework.cloud.release.internal.sagan; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + /** * @author Marcin Grzejszczak */ +@JsonInclude(value = JsonInclude.Include.NON_NULL) public class ReleaseUpdate { public String groupId = ""; public String artifactId = ""; @@ -10,6 +14,7 @@ public class ReleaseUpdate { public String releaseStatus = ""; public String refDocUrl = ""; public String apiDocUrl = ""; + public Boolean current; public Repository repository; @Override public String toString() { diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Repository.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Repository.java index cd1b6fd7..85ad3bd7 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Repository.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/Repository.java @@ -1,13 +1,17 @@ package org.springframework.cloud.release.internal.sagan; +import com.fasterxml.jackson.annotation.JsonInclude; +import com.fasterxml.jackson.databind.annotation.JsonSerialize; + /** * @author Marcin Grzejszczak */ +@JsonInclude(value = JsonInclude.Include.NON_NULL) public class Repository { public String id; public String name; public String url; - public boolean snapshotsEnabled; + public Boolean snapshotsEnabled; @Override public String toString() { return "Repository{" + "id='" + id + '\'' + ", name='" + name + '\'' + ", url='" diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClient.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClient.java index 6b536c0f..3625187c 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClient.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClient.java @@ -1,9 +1,14 @@ package org.springframework.cloud.release.internal.sagan; import java.net.URI; +import java.util.List; +import edu.emory.mathcs.backport.java.util.Collections; +import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.release.internal.ReleaserProperties; +import org.springframework.core.ParameterizedTypeReference; +import org.springframework.http.HttpEntity; import org.springframework.http.HttpHeaders; import org.springframework.http.MediaType; import org.springframework.http.RequestEntity; @@ -15,7 +20,7 @@ import org.springframework.web.client.RestTemplate; */ class RestTemplateSaganClient implements SaganClient { - private static final org.slf4j.Logger log = LoggerFactory.getLogger(RestTemplateSaganClient.class); + private static final Logger log = LoggerFactory.getLogger(RestTemplateSaganClient.class); private final RestTemplate restTemplate; private final String baseUrl; @@ -34,15 +39,15 @@ class RestTemplateSaganClient implements SaganClient { } @Override - public Release createOrUpdateRelease(String projectName, ReleaseUpdate releaseUpdate) { - RequestEntity request = RequestEntity + public Project updateRelease(String projectName, List releaseUpdates) { + RequestEntity> request = RequestEntity .put(URI.create(this.baseUrl +"/project_metadata/" + projectName + "/releases")) .header(HttpHeaders.CONTENT_TYPE, MediaType.APPLICATION_JSON_UTF8_VALUE) - .body(releaseUpdate); - ResponseEntity entity = this.restTemplate - .exchange(request, Release.class); - Release release = entity.getBody(); - log.info("Response from Sagan\n\n[{}] \n with body [{}]", entity, release); - return release; + .body(releaseUpdates); + ResponseEntity entity = this.restTemplate + .exchange(request, Project.class); + Project project = entity.getBody(); + log.info("Response from Sagan\n\n[{}] \n with body [{}]", entity, project); + return project; } } diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganClient.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganClient.java index b174c47c..6fc5cf26 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganClient.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganClient.java @@ -1,5 +1,7 @@ package org.springframework.cloud.release.internal.sagan; +import java.util.List; + /** * @author Marcin Grzejszczak */ @@ -8,5 +10,5 @@ public interface SaganClient { Release getRelease(String projectName, String releaseVersion); - Release createOrUpdateRelease(String projectName, ReleaseUpdate releaseUpdate); + Project updateRelease(String projectName, List releaseUpdate); } diff --git a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganUpdater.java b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganUpdater.java index a19ac18e..03f69983 100644 --- a/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganUpdater.java +++ b/spring-cloud-release-tools-core/src/main/java/org/springframework/cloud/release/internal/sagan/SaganUpdater.java @@ -1,5 +1,6 @@ package org.springframework.cloud.release.internal.sagan; +import edu.emory.mathcs.backport.java.util.Collections; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.cloud.release.internal.pom.ProjectVersion; @@ -30,7 +31,7 @@ public class SaganUpdater { update.apiDocUrl = referenceUrl(branch, version); update.refDocUrl = referenceUrl(branch, version); log.info("Updating Sagan with \n\n{}", update); - this.saganClient.createOrUpdateRelease(version.projectName, update); + this.saganClient.updateRelease(version.projectName, Collections.singletonList(update)); } private String referenceUrl(String branch, ProjectVersion version) { diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClientTests.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClientTests.java index 43f19df3..03d89250 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClientTests.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/RestTemplateSaganClientTests.java @@ -1,7 +1,11 @@ package org.springframework.cloud.release.internal.sagan; +import java.util.ArrayList; +import java.util.List; + import static org.assertj.core.api.BDDAssertions.then; +import edu.emory.mathcs.backport.java.util.Arrays; import org.junit.Before; import org.junit.Test; import org.junit.runner.RunWith; @@ -88,31 +92,93 @@ public class RestTemplateSaganClientTests { @Test public void should_update_a_release() { - ReleaseUpdate releaseUpdate = new ReleaseUpdate(); - releaseUpdate.groupId = "org.springframework"; - releaseUpdate.artifactId = "spring-context"; - releaseUpdate.version = "1.2.8.RELEASE"; - releaseUpdate.releaseStatus = "PRERELEASE"; - releaseUpdate.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/"; - releaseUpdate.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + Repository snapshots = snapshots(); + Repository milestone = milestone(); + List updates = new ArrayList<>(); - \n \"repository\" : {\n \"id\" : \"spring-milestones\",\n \"name\" : \"Spring Milestones\",\n \"url\" : \"https://repo.spring.io/libs-milestone\",\n \"snapshotsEnabled\" : false\n }\n}, {\n \"groupId\" : \"org.springframework\",\n \"artifactId\" : \"spring-context\",\n \"version\" : \"5.0.0.BUILD-SNAPSHOT\",\n \"releaseStatus\" : \"SNAPSHOT\",\n \"refDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/spring-framework-reference/\",\n \"apiDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/javadoc-api/\",\n \"repository\" : {\n \"id\" : \"spring-snapshots\",\n \"name\" : \"Spring Snapshots\",\n \"url\" : \"https://repo.spring.io/libs-snapshot\",\n \"snapshotsEnabled\" : true\n }\n}, {\n \"groupId\" : \"org.springframework\",\n \"artifactId\" : \"spring-context\",\n \"version\" : \"4.3.12.BUILD-SNAPSHOT\",\n \"releaseStatus\" : \"SNAPSHOT\",\n \"refDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/\",\n \"apiDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/javadoc-api/\",\n \"repository\" : {\n \"id\" : \"spring-snapshots\",\n \"name\" : \"Spring Snapshots\",\n \"url\" : \"https://repo.spring.io/libs-snapshot\",\n \"snapshotsEnabled\" : true\n }\n}, {\n \"groupId\" : \"org.springframework\",\n \"artifactId\" : \"spring-context\",\n \"version\" : \"4.3.11.RELEASE\",\n \"releaseStatus\" : \"GENERAL_AVAILABILITY\",\n \"current\" : true,\n \"refDocUrl\" : \"http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/\",\n \"apiDocUrl\" : \"http://docs.spring.io/spring/docs/current/javadoc-api/\"\n}, {\n \"groupId\" : \"org.springframework\",\n \"artifactId\" : \"spring-context\",\n \"version\" : \"4.2.9.RELEASE\",\n \"releaseStatus\" : \"GENERAL_AVAILABILITY\",\n \"refDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/\",\n \"apiDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/javadoc-api/\"\n}, {\n \"groupId\" : \"org.springframework\",\n \"artifactId\" : \"spring-context\",\n \"version\" : \"3.2.18.RELEASE\",\n \"releaseStatus\" : \"GENERAL_AVAILABILITY\",\n \"refDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/\",\n \"apiDocUrl\" : \"http://docs.spring.io/spring/docs/{version}/javadoc-api/\"\n} ]" + ReleaseUpdate firstRelease = new ReleaseUpdate(); + firstRelease.groupId = "org.springframework"; + firstRelease.artifactId = "spring-context"; + firstRelease.version = "1.2.8.RELEASE"; + firstRelease.releaseStatus = "PRERELEASE"; + firstRelease.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/"; + firstRelease.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + firstRelease.repository = milestone; + ReleaseUpdate secondRelease = new ReleaseUpdate(); + secondRelease.groupId = "org.springframework"; + secondRelease.artifactId = "spring-context"; + secondRelease.version = "5.0.0.BUILD-SNAPSHOT"; + secondRelease.releaseStatus = "SNAPSHOT"; + secondRelease.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/"; + secondRelease.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + secondRelease.repository = snapshots; - Release release = this.client.createOrUpdateRelease("spring-framework", releaseUpdate); + ReleaseUpdate thirdRelease = new ReleaseUpdate(); + thirdRelease.groupId = "org.springframework"; + thirdRelease.artifactId = "spring-context"; + thirdRelease.version = "4.3.12.BUILD-SNAPSHOT"; + thirdRelease.releaseStatus = "SNAPSHOT"; + thirdRelease.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/"; + thirdRelease.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + thirdRelease.repository = snapshots; - then(release.releaseStatus).isEqualTo("GENERAL_AVAILABILITY"); - then(release.refDocUrl).isEqualTo("http://docs.spring.io/spring/docs/1.2.3.RELEASE/spring-framework-reference/"); - then(release.apiDocUrl).isEqualTo("http://docs.spring.io/spring/docs/1.2.3.RELEASE/javadoc-api/"); - then(release.groupId).isEqualTo("org.springframework"); - then(release.artifactId).isEqualTo("spring-context"); - then(release.version).isEqualTo("1.2.3.RELEASE"); - then(release.current).isFalse(); - then(release.generalAvailability).isTrue(); - then(release.preRelease).isFalse(); - then(release.versionDisplayName).isEqualTo("1.2.3"); - then(release.snapshot).isFalse(); + ReleaseUpdate fourthRelease = new ReleaseUpdate(); + fourthRelease.groupId = "org.springframework"; + fourthRelease.artifactId = "spring-context"; + fourthRelease.version = "4.3.11.RELEASE"; + fourthRelease.releaseStatus = "GENERAL_AVAILABILITY"; + fourthRelease.current = true; + fourthRelease.refDocUrl = "http://docs.spring.io/spring/docs/current/spring-framework-reference/htmlsingle/"; + fourthRelease.apiDocUrl = "http://docs.spring.io/spring/docs/current/javadoc-api/"; + + ReleaseUpdate fithRelease = new ReleaseUpdate(); + fithRelease.groupId = "org.springframework"; + fithRelease.artifactId = "spring-context"; + fithRelease.version = "4.2.9.RELEASE"; + fithRelease.releaseStatus = "GENERAL_AVAILABILITY"; + fithRelease.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/"; + fithRelease.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + + ReleaseUpdate sithRelease = new ReleaseUpdate(); + sithRelease.groupId = "org.springframework"; + sithRelease.artifactId = "spring-context"; + sithRelease.version = "3.2.18.RELEASE"; + sithRelease.releaseStatus = "GENERAL_AVAILABILITY"; + sithRelease.refDocUrl = "http://docs.spring.io/spring/docs/{version}/spring-framework-reference/htmlsingle/"; + sithRelease.apiDocUrl = "http://docs.spring.io/spring/docs/{version}/javadoc-api/"; + + updates.add(firstRelease); + updates.add(secondRelease); + updates.add(thirdRelease); + updates.add(fourthRelease); + updates.add(fithRelease); + updates.add(sithRelease); + + Project project = this.client.updateRelease("spring-framework", updates); + + then(project.id).isEqualTo("spring-framework"); + then(project.name).isEqualTo("Spring Framework"); + then(project.projectReleases).hasSize(7); + } + + private Repository milestone() { + Repository milestone = new Repository(); + milestone.id = "spring-milestones"; + milestone.name = "Spring Milestones"; + milestone.url = "https://repo.spring.io/libs-milestone"; + milestone.snapshotsEnabled = false; + return milestone; + } + + private Repository snapshots() { + Repository snapshots = new Repository(); + snapshots.id = "spring-snapshots"; + snapshots.name = "Spring Snapshots"; + snapshots.url = "https://repo.spring.io/libs-snapshot"; + snapshots.snapshotsEnabled = true; + return snapshots; } private SaganClient saganClient(ReleaserProperties properties) { diff --git a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/SaganUpdaterTest.java b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/SaganUpdaterTest.java index 05189d11..ea289d2e 100644 --- a/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/SaganUpdaterTest.java +++ b/spring-cloud-release-tools-core/src/test/java/org/springframework/cloud/release/internal/sagan/SaganUpdaterTest.java @@ -1,5 +1,7 @@ package org.springframework.cloud.release.internal.sagan; +import java.util.List; + import org.hamcrest.Description; import org.hamcrest.TypeSafeMatcher; import org.junit.Test; @@ -23,12 +25,12 @@ public class SaganUpdaterTest { this.saganUpdater.updateSagan("master", version("1.0.0.M1"), version("1.0.0.M1")); BDDMockito.then(this.saganClient).should(BDDMockito.never()) - .createOrUpdateRelease(BDDMockito.anyString(), BDDMockito.any(ReleaseUpdate.class)); + .updateRelease(BDDMockito.anyString(), BDDMockito.anyList()); this.saganUpdater.updateSagan("master", version("1.0.0.RC1"), version("1.0.0.RC1")); BDDMockito.then(this.saganClient).should(BDDMockito.never()) - .createOrUpdateRelease(BDDMockito.anyString(), BDDMockito.any(ReleaseUpdate.class)); + .updateRelease(BDDMockito.anyString(), BDDMockito.anyList()); } private ProjectVersion version(String version) { @@ -40,7 +42,7 @@ public class SaganUpdaterTest { this.saganUpdater.updateSagan("master", projectVersion, projectVersion); - BDDMockito.then(this.saganClient).should().createOrUpdateRelease(BDDMockito.eq("foo"), + BDDMockito.then(this.saganClient).should().updateRelease(BDDMockito.eq("foo"), BDDMockito.argThat(withReleaseUpdate("1.0.0.BUILD-SNAPSHOT", "http://cloud.spring.io/foo/foo.html"))); } @@ -49,7 +51,7 @@ public class SaganUpdaterTest { this.saganUpdater.updateSagan("master", projectVersion, projectVersion); - BDDMockito.then(this.saganClient).should().createOrUpdateRelease(BDDMockito.eq("foo"), + BDDMockito.then(this.saganClient).should().updateRelease(BDDMockito.eq("foo"), BDDMockito.argThat(withReleaseUpdate("1.0.0.RELEASE", "http://cloud.spring.io/spring-cloud-static/foo/{version}/"))); } @@ -58,13 +60,14 @@ public class SaganUpdaterTest { this.saganUpdater.updateSagan("1.1.x", projectVersion, projectVersion); - BDDMockito.then(this.saganClient).should().createOrUpdateRelease(BDDMockito.eq("foo"), + BDDMockito.then(this.saganClient).should().updateRelease(BDDMockito.eq("foo"), BDDMockito.argThat(withReleaseUpdate("1.1.0.BUILD-SNAPSHOT", "http://cloud.spring.io/foo/1.1.x/"))); } - private TypeSafeMatcher withReleaseUpdate(final String version, final String refDocUrl) { - return new TypeSafeMatcher() { - @Override protected boolean matchesSafely(ReleaseUpdate item) { + private TypeSafeMatcher> withReleaseUpdate(final String version, final String refDocUrl) { + return new TypeSafeMatcher>() { + @Override protected boolean matchesSafely(List items) { + ReleaseUpdate item = items.get(0); return "foo".equals(item.artifactId) && version.equals(item.version) && refDocUrl.equals(item.apiDocUrl) && diff --git a/spring-cloud-release-tools-spring/src/test/java/org/springframework/cloud/release/internal/spring/AcceptanceTests.java b/spring-cloud-release-tools-spring/src/test/java/org/springframework/cloud/release/internal/spring/AcceptanceTests.java index 3cc7b195..dc6bb418 100644 --- a/spring-cloud-release-tools-spring/src/test/java/org/springframework/cloud/release/internal/spring/AcceptanceTests.java +++ b/spring-cloud-release-tools-spring/src/test/java/org/springframework/cloud/release/internal/spring/AcceptanceTests.java @@ -99,8 +99,8 @@ public class AcceptanceTests { .contains("Camden.SR5") .contains("- Spring Cloud Config `1.2.2.RELEASE` ([issues](http://foo.bar.com/1.2.2.RELEASE))") .contains("- Spring Cloud Aws `1.1.3.RELEASE` ([issues](http://foo.bar.com/1.1.3.RELEASE))"); - BDDMockito.then(this.saganClient).should().createOrUpdateRelease(BDDMockito.eq("spring-cloud-consul"), - BDDMockito.any(ReleaseUpdate.class)); + BDDMockito.then(this.saganClient).should().updateRelease(BDDMockito.eq("spring-cloud-consul"), + BDDMockito.anyList()); } @Test @@ -138,8 +138,8 @@ public class AcceptanceTests { .contains("Dalston.RC1") .contains("- Spring Cloud Build `1.3.1.RELEASE` ([issues](http://foo.bar.com/1.3.1.RELEASE))") .contains("- Spring Cloud Bus `1.3.0.M1` ([issues](http://foo.bar.com/1.3.0.M1))"); - BDDMockito.then(this.saganClient).should(BDDMockito.never()).createOrUpdateRelease( - BDDMockito.anyString(), BDDMockito.any(ReleaseUpdate.class)); + BDDMockito.then(this.saganClient).should(BDDMockito.never()).updateRelease( + BDDMockito.anyString(), BDDMockito.anyList()); } @Test @@ -169,8 +169,8 @@ public class AcceptanceTests { .contains("Dalston.RC1") .contains("- Spring Cloud Build `1.3.1.RELEASE` ([issues](http://foo.bar.com/1.3.1.RELEASE))") .contains("- Spring Cloud Bus `1.3.0.M1` ([issues](http://foo.bar.com/1.3.0.M1)"); - BDDMockito.then(this.saganClient).should(BDDMockito.never()).createOrUpdateRelease( - BDDMockito.anyString(), BDDMockito.any(ReleaseUpdate.class)); + BDDMockito.then(this.saganClient).should(BDDMockito.never()).updateRelease( + BDDMockito.anyString(), BDDMockito.anyList()); } private Iterable listOfCommits(File project) throws GitAPIException {