36
36
import com .google .cloud .compute .v1 .RegionDisksClient ;
37
37
import com .google .cloud .compute .v1 .RemoveResourcePoliciesRegionDiskRequest ;
38
38
import com .google .cloud .compute .v1 .ResourcePoliciesClient ;
39
+ import com .google .cloud .compute .v1 .StopGroupAsyncReplicationDiskRequest ;
40
+ import com .google .cloud .compute .v1 .StopGroupAsyncReplicationRegionDiskRequest ;
39
41
import compute .disks .consistencygroup .AddDiskToConsistencyGroup ;
40
42
import compute .disks .consistencygroup .CreateConsistencyGroup ;
41
43
import compute .disks .consistencygroup .DeleteConsistencyGroup ;
42
44
import compute .disks .consistencygroup .ListRegionalDisksInConsistencyGroup ;
43
45
import compute .disks .consistencygroup .ListZonalDisksInConsistencyGroup ;
44
46
import compute .disks .consistencygroup .RemoveDiskFromConsistencyGroup ;
47
+ import compute .disks .consistencygroup .StopRegionalDiskReplicationConsistencyGroup ;
48
+ import compute .disks .consistencygroup .StopZonalDiskReplicationConsistencyGroup ;
45
49
import java .util .concurrent .TimeUnit ;
46
50
import org .junit .jupiter .api .Test ;
47
51
import org .junit .jupiter .api .Timeout ;
54
58
public class ConsistencyGroupIT {
55
59
private static final String PROJECT_ID = "project-id" ;
56
60
private static final String REGION = "asia-east1" ;
61
+ private static final String ZONE = "asia-east1-c" ;
57
62
private static final String CONSISTENCY_GROUP_NAME = "consistency-group" ;
58
63
private static final String DISK_NAME = "disk-for-consistency" ;
59
64
@@ -193,4 +198,54 @@ public void testListZonalDisksInConsistencyGroup() throws Exception {
193
198
verify (mockResponse , times (1 )).iterateAll ();
194
199
}
195
200
}
201
+
202
+ @ Test
203
+ public void testStopRegionalDiskReplicationConsistencyGroup () throws Exception {
204
+ try (MockedStatic <RegionDisksClient > mockedRegionDisksClient =
205
+ mockStatic (RegionDisksClient .class )) {
206
+ Operation operation = mock (Operation .class );
207
+ RegionDisksClient mockClient = mock (RegionDisksClient .class );
208
+ OperationFuture mockFuture = mock (OperationFuture .class );
209
+
210
+ mockedRegionDisksClient .when (RegionDisksClient ::create ).thenReturn (mockClient );
211
+ when (mockClient .stopGroupAsyncReplicationAsync (
212
+ any (StopGroupAsyncReplicationRegionDiskRequest .class ))).thenReturn (mockFuture );
213
+ when (mockFuture .get (anyLong (), any (TimeUnit .class ))).thenReturn (operation );
214
+ when (operation .getStatus ()).thenReturn (Status .DONE );
215
+
216
+ Status status = StopRegionalDiskReplicationConsistencyGroup
217
+ .stopRegionalDiskReplicationConsistencyGroup (
218
+ PROJECT_ID , REGION , CONSISTENCY_GROUP_NAME );
219
+
220
+ verify (mockClient , times (1 )).stopGroupAsyncReplicationAsync (
221
+ any (StopGroupAsyncReplicationRegionDiskRequest .class ));
222
+ verify (mockFuture , times (1 )).get (anyLong (), any (TimeUnit .class ));
223
+ assertEquals (Status .DONE , status );
224
+ }
225
+ }
226
+
227
+ @ Test
228
+ public void testStopZonalDiskReplicationConsistencyGroup () throws Exception {
229
+ try (MockedStatic <DisksClient > mockedDisksClient =
230
+ mockStatic (DisksClient .class )) {
231
+ Operation operation = mock (Operation .class );
232
+ DisksClient mockClient = mock (DisksClient .class );
233
+ OperationFuture mockFuture = mock (OperationFuture .class );
234
+
235
+ mockedDisksClient .when (DisksClient ::create ).thenReturn (mockClient );
236
+ when (mockClient .stopGroupAsyncReplicationAsync (
237
+ any (StopGroupAsyncReplicationDiskRequest .class ))).thenReturn (mockFuture );
238
+ when (mockFuture .get (anyLong (), any (TimeUnit .class ))).thenReturn (operation );
239
+ when (operation .getStatus ()).thenReturn (Status .DONE );
240
+
241
+ Status status = StopZonalDiskReplicationConsistencyGroup
242
+ .stopZonalDiskReplicationConsistencyGroup (
243
+ PROJECT_ID , ZONE , CONSISTENCY_GROUP_NAME );
244
+
245
+ verify (mockClient , times (1 )).stopGroupAsyncReplicationAsync (
246
+ any (StopGroupAsyncReplicationDiskRequest .class ));
247
+ verify (mockFuture , times (1 )).get (anyLong (), any (TimeUnit .class ));
248
+ assertEquals (Status .DONE , status );
249
+ }
250
+ }
196
251
}
0 commit comments