@@ -47,6 +47,14 @@ private static void requestCreateServiceBroker(CloudFoundryClient cloudFoundryCl
4747 .build ()));
4848 }
4949
50+ private static void requestDeleteServiceBroker (CloudFoundryClient cloudFoundryClient , String serviceBrokerId ) {
51+ when (cloudFoundryClient .serviceBrokers ()
52+ .delete (org .cloudfoundry .client .v2 .servicebrokers .DeleteServiceBrokerRequest .builder ()
53+ .serviceBrokerId (serviceBrokerId )
54+ .build ()))
55+ .thenReturn (Mono .empty ());
56+ }
57+
5058 private static void requestListServiceBrokers (CloudFoundryClient cloudFoundryClient ) {
5159 when (cloudFoundryClient .serviceBrokers ()
5260 .list (ListServiceBrokersRequest .builder ()
@@ -61,6 +69,21 @@ private static void requestListServiceBrokers(CloudFoundryClient cloudFoundryCli
6169 .build ()));
6270 }
6371
72+ private static void requestListServiceBrokers (CloudFoundryClient cloudFoundryClient , String serviceBrokerName ) {
73+ when (cloudFoundryClient .serviceBrokers ()
74+ .list (ListServiceBrokersRequest .builder ()
75+ .name (serviceBrokerName )
76+ .page (1 )
77+ .build ()))
78+ .thenReturn (Mono
79+ .just (fill (ListServiceBrokersResponse .builder ())
80+ .resource (fill (ServiceBrokerResource .builder (), "service-broker-" )
81+ .entity (fill (ServiceBrokerEntity .builder (), "service-broker-resource-" )
82+ .build ())
83+ .build ())
84+ .build ()));
85+ }
86+
6487 private static void requestListServiceBrokersEmpty (CloudFoundryClient cloudFoundryClient ) {
6588 when (cloudFoundryClient .serviceBrokers ()
6689 .list (ListServiceBrokersRequest .builder ()
@@ -71,6 +94,17 @@ private static void requestListServiceBrokersEmpty(CloudFoundryClient cloudFound
7194 .build ()));
7295 }
7396
97+ private static void requestListServiceBrokersEmpty (CloudFoundryClient cloudFoundryClient , String serviceBrokerName ) {
98+ when (cloudFoundryClient .serviceBrokers ()
99+ .list (ListServiceBrokersRequest .builder ()
100+ .name (serviceBrokerName )
101+ .page (1 )
102+ .build ()))
103+ .thenReturn (Mono
104+ .just (fill (ListServiceBrokersResponse .builder ())
105+ .build ()));
106+ }
107+
74108 public static final class CreateServiceBroker extends AbstractOperationsApiTest <Void > {
75109
76110 private final DefaultServiceAdmin serviceAdmin = new DefaultServiceAdmin (this .cloudFoundryClient , Mono .just (TEST_SPACE_ID ));
@@ -126,6 +160,57 @@ protected Mono<Void> invoke() {
126160
127161 }
128162
163+ public static final class DeleteServiceBroker extends AbstractOperationsApiTest <Void > {
164+
165+ private final DefaultServiceAdmin serviceAdmin = new DefaultServiceAdmin (this .cloudFoundryClient , Mono .just (TEST_SPACE_ID ));
166+
167+ @ Before
168+ public void setUp () throws Exception {
169+ requestListServiceBrokers (this .cloudFoundryClient , "test-service-broker-name" );
170+ requestDeleteServiceBroker (this .cloudFoundryClient , "test-service-broker-id" );
171+ }
172+
173+ @ Override
174+ protected void assertions (TestSubscriber <Void > testSubscriber ) {
175+ // Expects onComplete() with no onNext()
176+ }
177+
178+ @ Override
179+ protected Mono <Void > invoke () {
180+ return this .serviceAdmin
181+ .delete (DeleteServiceBrokerRequest .builder ()
182+ .name ("test-service-broker-name" )
183+ .build ());
184+ }
185+
186+ }
187+
188+ public static final class DeleteServiceBrokerNoServiceBroker extends AbstractOperationsApiTest <Void > {
189+
190+ private final DefaultServiceAdmin serviceAdmin = new DefaultServiceAdmin (this .cloudFoundryClient , Mono .just (TEST_SPACE_ID ));
191+
192+ @ Before
193+ public void setUp () throws Exception {
194+ requestListServiceBrokersEmpty (this .cloudFoundryClient , "test-service-broker-name" );
195+ requestDeleteServiceBroker (this .cloudFoundryClient , "test-service-broker-id" );
196+ }
197+
198+ @ Override
199+ protected void assertions (TestSubscriber <Void > testSubscriber ) {
200+ testSubscriber
201+ .assertError (IllegalArgumentException .class , String .format ("Service Broker %s does not exist" , "test-service-broker-name" ));
202+ }
203+
204+ @ Override
205+ protected Mono <Void > invoke () {
206+ return this .serviceAdmin
207+ .delete (DeleteServiceBrokerRequest .builder ()
208+ .name ("test-service-broker-name" )
209+ .build ());
210+ }
211+
212+ }
213+
129214 public static final class ListServiceBrokers extends AbstractOperationsApiTest <ServiceBroker > {
130215
131216 private final DefaultServiceAdmin serviceAdmin = new DefaultServiceAdmin (this .cloudFoundryClient , Mono .just (TEST_SPACE_ID ));
@@ -148,7 +233,7 @@ protected void assertions(TestSubscriber<ServiceBroker> testSubscriber) {
148233 @ Override
149234 protected Publisher <ServiceBroker > invoke () {
150235 return this .serviceAdmin
151- .listServiceBrokers ();
236+ .list ();
152237 }
153238
154239 }
@@ -170,7 +255,7 @@ protected void assertions(TestSubscriber<ServiceBroker> testSubscriber) {
170255 @ Override
171256 protected Publisher <ServiceBroker > invoke () {
172257 return this .serviceAdmin
173- .listServiceBrokers ();
258+ .list ();
174259 }
175260
176261 }
0 commit comments