1 /* 2 * Copyright 2022 Google LLC 3 * 4 * Licensed under the Apache License, Version 2.0 (the "License"); 5 * you may not use this file except in compliance with the License. 6 * You may obtain a copy of the License at 7 * 8 * https://www.apache.org/licenses/LICENSE-2.0 9 * 10 * Unless required by applicable law or agreed to in writing, software 11 * distributed under the License is distributed on an "AS IS" BASIS, 12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. 13 * See the License for the specific language governing permissions and 14 * limitations under the License. 15 */ 16 17 package com.google.cloud.beyondcorp.appconnectors.v1; 18 19 import static com.google.cloud.beyondcorp.appconnectors.v1.AppConnectorsServiceClient.ListAppConnectorsPagedResponse; 20 import static com.google.cloud.beyondcorp.appconnectors.v1.AppConnectorsServiceClient.ListLocationsPagedResponse; 21 22 import com.google.api.gax.core.NoCredentialsProvider; 23 import com.google.api.gax.grpc.GaxGrpcProperties; 24 import com.google.api.gax.grpc.testing.LocalChannelProvider; 25 import com.google.api.gax.grpc.testing.MockGrpcService; 26 import com.google.api.gax.grpc.testing.MockServiceHelper; 27 import com.google.api.gax.rpc.ApiClientHeaderProvider; 28 import com.google.api.gax.rpc.InvalidArgumentException; 29 import com.google.api.gax.rpc.StatusCode; 30 import com.google.cloud.location.GetLocationRequest; 31 import com.google.cloud.location.ListLocationsRequest; 32 import com.google.cloud.location.ListLocationsResponse; 33 import com.google.cloud.location.Location; 34 import com.google.common.collect.Lists; 35 import com.google.iam.v1.AuditConfig; 36 import com.google.iam.v1.Binding; 37 import com.google.iam.v1.GetIamPolicyRequest; 38 import com.google.iam.v1.GetPolicyOptions; 39 import com.google.iam.v1.Policy; 40 import com.google.iam.v1.SetIamPolicyRequest; 41 import com.google.iam.v1.TestIamPermissionsRequest; 42 import com.google.iam.v1.TestIamPermissionsResponse; 43 import com.google.longrunning.Operation; 44 import com.google.protobuf.AbstractMessage; 45 import com.google.protobuf.Any; 46 import com.google.protobuf.ByteString; 47 import com.google.protobuf.Empty; 48 import com.google.protobuf.FieldMask; 49 import com.google.protobuf.Timestamp; 50 import io.grpc.StatusRuntimeException; 51 import java.io.IOException; 52 import java.util.ArrayList; 53 import java.util.Arrays; 54 import java.util.HashMap; 55 import java.util.List; 56 import java.util.UUID; 57 import java.util.concurrent.ExecutionException; 58 import javax.annotation.Generated; 59 import org.junit.After; 60 import org.junit.AfterClass; 61 import org.junit.Assert; 62 import org.junit.Before; 63 import org.junit.BeforeClass; 64 import org.junit.Test; 65 66 @Generated("by gapic-generator-java") 67 public class AppConnectorsServiceClientTest { 68 private static MockAppConnectorsService mockAppConnectorsService; 69 private static MockIAMPolicy mockIAMPolicy; 70 private static MockLocations mockLocations; 71 private static MockServiceHelper mockServiceHelper; 72 private LocalChannelProvider channelProvider; 73 private AppConnectorsServiceClient client; 74 75 @BeforeClass startStaticServer()76 public static void startStaticServer() { 77 mockAppConnectorsService = new MockAppConnectorsService(); 78 mockLocations = new MockLocations(); 79 mockIAMPolicy = new MockIAMPolicy(); 80 mockServiceHelper = 81 new MockServiceHelper( 82 UUID.randomUUID().toString(), 83 Arrays.<MockGrpcService>asList(mockAppConnectorsService, mockLocations, mockIAMPolicy)); 84 mockServiceHelper.start(); 85 } 86 87 @AfterClass stopServer()88 public static void stopServer() { 89 mockServiceHelper.stop(); 90 } 91 92 @Before setUp()93 public void setUp() throws IOException { 94 mockServiceHelper.reset(); 95 channelProvider = mockServiceHelper.createChannelProvider(); 96 AppConnectorsServiceSettings settings = 97 AppConnectorsServiceSettings.newBuilder() 98 .setTransportChannelProvider(channelProvider) 99 .setCredentialsProvider(NoCredentialsProvider.create()) 100 .build(); 101 client = AppConnectorsServiceClient.create(settings); 102 } 103 104 @After tearDown()105 public void tearDown() throws Exception { 106 client.close(); 107 } 108 109 @Test listAppConnectorsTest()110 public void listAppConnectorsTest() throws Exception { 111 AppConnector responsesElement = AppConnector.newBuilder().build(); 112 ListAppConnectorsResponse expectedResponse = 113 ListAppConnectorsResponse.newBuilder() 114 .setNextPageToken("") 115 .addAllAppConnectors(Arrays.asList(responsesElement)) 116 .build(); 117 mockAppConnectorsService.addResponse(expectedResponse); 118 119 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 120 121 ListAppConnectorsPagedResponse pagedListResponse = client.listAppConnectors(parent); 122 123 List<AppConnector> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 124 125 Assert.assertEquals(1, resources.size()); 126 Assert.assertEquals(expectedResponse.getAppConnectorsList().get(0), resources.get(0)); 127 128 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 129 Assert.assertEquals(1, actualRequests.size()); 130 ListAppConnectorsRequest actualRequest = ((ListAppConnectorsRequest) actualRequests.get(0)); 131 132 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 133 Assert.assertTrue( 134 channelProvider.isHeaderSent( 135 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 136 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 137 } 138 139 @Test listAppConnectorsExceptionTest()140 public void listAppConnectorsExceptionTest() throws Exception { 141 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 142 mockAppConnectorsService.addException(exception); 143 144 try { 145 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 146 client.listAppConnectors(parent); 147 Assert.fail("No exception raised"); 148 } catch (InvalidArgumentException e) { 149 // Expected exception. 150 } 151 } 152 153 @Test listAppConnectorsTest2()154 public void listAppConnectorsTest2() throws Exception { 155 AppConnector responsesElement = AppConnector.newBuilder().build(); 156 ListAppConnectorsResponse expectedResponse = 157 ListAppConnectorsResponse.newBuilder() 158 .setNextPageToken("") 159 .addAllAppConnectors(Arrays.asList(responsesElement)) 160 .build(); 161 mockAppConnectorsService.addResponse(expectedResponse); 162 163 String parent = "parent-995424086"; 164 165 ListAppConnectorsPagedResponse pagedListResponse = client.listAppConnectors(parent); 166 167 List<AppConnector> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 168 169 Assert.assertEquals(1, resources.size()); 170 Assert.assertEquals(expectedResponse.getAppConnectorsList().get(0), resources.get(0)); 171 172 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 173 Assert.assertEquals(1, actualRequests.size()); 174 ListAppConnectorsRequest actualRequest = ((ListAppConnectorsRequest) actualRequests.get(0)); 175 176 Assert.assertEquals(parent, actualRequest.getParent()); 177 Assert.assertTrue( 178 channelProvider.isHeaderSent( 179 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 180 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 181 } 182 183 @Test listAppConnectorsExceptionTest2()184 public void listAppConnectorsExceptionTest2() throws Exception { 185 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 186 mockAppConnectorsService.addException(exception); 187 188 try { 189 String parent = "parent-995424086"; 190 client.listAppConnectors(parent); 191 Assert.fail("No exception raised"); 192 } catch (InvalidArgumentException e) { 193 // Expected exception. 194 } 195 } 196 197 @Test getAppConnectorTest()198 public void getAppConnectorTest() throws Exception { 199 AppConnector expectedResponse = 200 AppConnector.newBuilder() 201 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 202 .setCreateTime(Timestamp.newBuilder().build()) 203 .setUpdateTime(Timestamp.newBuilder().build()) 204 .putAllLabels(new HashMap<String, String>()) 205 .setDisplayName("displayName1714148973") 206 .setUid("uid115792") 207 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 208 .setResourceInfo(ResourceInfo.newBuilder().build()) 209 .build(); 210 mockAppConnectorsService.addResponse(expectedResponse); 211 212 AppConnectorName name = AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 213 214 AppConnector actualResponse = client.getAppConnector(name); 215 Assert.assertEquals(expectedResponse, actualResponse); 216 217 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 218 Assert.assertEquals(1, actualRequests.size()); 219 GetAppConnectorRequest actualRequest = ((GetAppConnectorRequest) actualRequests.get(0)); 220 221 Assert.assertEquals(name.toString(), actualRequest.getName()); 222 Assert.assertTrue( 223 channelProvider.isHeaderSent( 224 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 225 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 226 } 227 228 @Test getAppConnectorExceptionTest()229 public void getAppConnectorExceptionTest() throws Exception { 230 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 231 mockAppConnectorsService.addException(exception); 232 233 try { 234 AppConnectorName name = AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 235 client.getAppConnector(name); 236 Assert.fail("No exception raised"); 237 } catch (InvalidArgumentException e) { 238 // Expected exception. 239 } 240 } 241 242 @Test getAppConnectorTest2()243 public void getAppConnectorTest2() throws Exception { 244 AppConnector expectedResponse = 245 AppConnector.newBuilder() 246 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 247 .setCreateTime(Timestamp.newBuilder().build()) 248 .setUpdateTime(Timestamp.newBuilder().build()) 249 .putAllLabels(new HashMap<String, String>()) 250 .setDisplayName("displayName1714148973") 251 .setUid("uid115792") 252 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 253 .setResourceInfo(ResourceInfo.newBuilder().build()) 254 .build(); 255 mockAppConnectorsService.addResponse(expectedResponse); 256 257 String name = "name3373707"; 258 259 AppConnector actualResponse = client.getAppConnector(name); 260 Assert.assertEquals(expectedResponse, actualResponse); 261 262 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 263 Assert.assertEquals(1, actualRequests.size()); 264 GetAppConnectorRequest actualRequest = ((GetAppConnectorRequest) actualRequests.get(0)); 265 266 Assert.assertEquals(name, actualRequest.getName()); 267 Assert.assertTrue( 268 channelProvider.isHeaderSent( 269 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 270 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 271 } 272 273 @Test getAppConnectorExceptionTest2()274 public void getAppConnectorExceptionTest2() throws Exception { 275 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 276 mockAppConnectorsService.addException(exception); 277 278 try { 279 String name = "name3373707"; 280 client.getAppConnector(name); 281 Assert.fail("No exception raised"); 282 } catch (InvalidArgumentException e) { 283 // Expected exception. 284 } 285 } 286 287 @Test createAppConnectorTest()288 public void createAppConnectorTest() throws Exception { 289 AppConnector expectedResponse = 290 AppConnector.newBuilder() 291 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 292 .setCreateTime(Timestamp.newBuilder().build()) 293 .setUpdateTime(Timestamp.newBuilder().build()) 294 .putAllLabels(new HashMap<String, String>()) 295 .setDisplayName("displayName1714148973") 296 .setUid("uid115792") 297 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 298 .setResourceInfo(ResourceInfo.newBuilder().build()) 299 .build(); 300 Operation resultOperation = 301 Operation.newBuilder() 302 .setName("createAppConnectorTest") 303 .setDone(true) 304 .setResponse(Any.pack(expectedResponse)) 305 .build(); 306 mockAppConnectorsService.addResponse(resultOperation); 307 308 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 309 AppConnector appConnector = AppConnector.newBuilder().build(); 310 String appConnectorId = "appConnectorId374103399"; 311 312 AppConnector actualResponse = 313 client.createAppConnectorAsync(parent, appConnector, appConnectorId).get(); 314 Assert.assertEquals(expectedResponse, actualResponse); 315 316 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 317 Assert.assertEquals(1, actualRequests.size()); 318 CreateAppConnectorRequest actualRequest = ((CreateAppConnectorRequest) actualRequests.get(0)); 319 320 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 321 Assert.assertEquals(appConnector, actualRequest.getAppConnector()); 322 Assert.assertEquals(appConnectorId, actualRequest.getAppConnectorId()); 323 Assert.assertTrue( 324 channelProvider.isHeaderSent( 325 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 326 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 327 } 328 329 @Test createAppConnectorExceptionTest()330 public void createAppConnectorExceptionTest() throws Exception { 331 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 332 mockAppConnectorsService.addException(exception); 333 334 try { 335 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 336 AppConnector appConnector = AppConnector.newBuilder().build(); 337 String appConnectorId = "appConnectorId374103399"; 338 client.createAppConnectorAsync(parent, appConnector, appConnectorId).get(); 339 Assert.fail("No exception raised"); 340 } catch (ExecutionException e) { 341 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 342 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 343 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 344 } 345 } 346 347 @Test createAppConnectorTest2()348 public void createAppConnectorTest2() throws Exception { 349 AppConnector expectedResponse = 350 AppConnector.newBuilder() 351 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 352 .setCreateTime(Timestamp.newBuilder().build()) 353 .setUpdateTime(Timestamp.newBuilder().build()) 354 .putAllLabels(new HashMap<String, String>()) 355 .setDisplayName("displayName1714148973") 356 .setUid("uid115792") 357 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 358 .setResourceInfo(ResourceInfo.newBuilder().build()) 359 .build(); 360 Operation resultOperation = 361 Operation.newBuilder() 362 .setName("createAppConnectorTest") 363 .setDone(true) 364 .setResponse(Any.pack(expectedResponse)) 365 .build(); 366 mockAppConnectorsService.addResponse(resultOperation); 367 368 String parent = "parent-995424086"; 369 AppConnector appConnector = AppConnector.newBuilder().build(); 370 String appConnectorId = "appConnectorId374103399"; 371 372 AppConnector actualResponse = 373 client.createAppConnectorAsync(parent, appConnector, appConnectorId).get(); 374 Assert.assertEquals(expectedResponse, actualResponse); 375 376 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 377 Assert.assertEquals(1, actualRequests.size()); 378 CreateAppConnectorRequest actualRequest = ((CreateAppConnectorRequest) actualRequests.get(0)); 379 380 Assert.assertEquals(parent, actualRequest.getParent()); 381 Assert.assertEquals(appConnector, actualRequest.getAppConnector()); 382 Assert.assertEquals(appConnectorId, actualRequest.getAppConnectorId()); 383 Assert.assertTrue( 384 channelProvider.isHeaderSent( 385 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 386 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 387 } 388 389 @Test createAppConnectorExceptionTest2()390 public void createAppConnectorExceptionTest2() throws Exception { 391 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 392 mockAppConnectorsService.addException(exception); 393 394 try { 395 String parent = "parent-995424086"; 396 AppConnector appConnector = AppConnector.newBuilder().build(); 397 String appConnectorId = "appConnectorId374103399"; 398 client.createAppConnectorAsync(parent, appConnector, appConnectorId).get(); 399 Assert.fail("No exception raised"); 400 } catch (ExecutionException e) { 401 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 402 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 403 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 404 } 405 } 406 407 @Test updateAppConnectorTest()408 public void updateAppConnectorTest() throws Exception { 409 AppConnector expectedResponse = 410 AppConnector.newBuilder() 411 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 412 .setCreateTime(Timestamp.newBuilder().build()) 413 .setUpdateTime(Timestamp.newBuilder().build()) 414 .putAllLabels(new HashMap<String, String>()) 415 .setDisplayName("displayName1714148973") 416 .setUid("uid115792") 417 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 418 .setResourceInfo(ResourceInfo.newBuilder().build()) 419 .build(); 420 Operation resultOperation = 421 Operation.newBuilder() 422 .setName("updateAppConnectorTest") 423 .setDone(true) 424 .setResponse(Any.pack(expectedResponse)) 425 .build(); 426 mockAppConnectorsService.addResponse(resultOperation); 427 428 AppConnector appConnector = AppConnector.newBuilder().build(); 429 FieldMask updateMask = FieldMask.newBuilder().build(); 430 431 AppConnector actualResponse = client.updateAppConnectorAsync(appConnector, updateMask).get(); 432 Assert.assertEquals(expectedResponse, actualResponse); 433 434 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 435 Assert.assertEquals(1, actualRequests.size()); 436 UpdateAppConnectorRequest actualRequest = ((UpdateAppConnectorRequest) actualRequests.get(0)); 437 438 Assert.assertEquals(appConnector, actualRequest.getAppConnector()); 439 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 440 Assert.assertTrue( 441 channelProvider.isHeaderSent( 442 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 443 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 444 } 445 446 @Test updateAppConnectorExceptionTest()447 public void updateAppConnectorExceptionTest() throws Exception { 448 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 449 mockAppConnectorsService.addException(exception); 450 451 try { 452 AppConnector appConnector = AppConnector.newBuilder().build(); 453 FieldMask updateMask = FieldMask.newBuilder().build(); 454 client.updateAppConnectorAsync(appConnector, updateMask).get(); 455 Assert.fail("No exception raised"); 456 } catch (ExecutionException e) { 457 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 458 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 459 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 460 } 461 } 462 463 @Test deleteAppConnectorTest()464 public void deleteAppConnectorTest() throws Exception { 465 Empty expectedResponse = Empty.newBuilder().build(); 466 Operation resultOperation = 467 Operation.newBuilder() 468 .setName("deleteAppConnectorTest") 469 .setDone(true) 470 .setResponse(Any.pack(expectedResponse)) 471 .build(); 472 mockAppConnectorsService.addResponse(resultOperation); 473 474 AppConnectorName name = AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 475 476 client.deleteAppConnectorAsync(name).get(); 477 478 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 479 Assert.assertEquals(1, actualRequests.size()); 480 DeleteAppConnectorRequest actualRequest = ((DeleteAppConnectorRequest) actualRequests.get(0)); 481 482 Assert.assertEquals(name.toString(), actualRequest.getName()); 483 Assert.assertTrue( 484 channelProvider.isHeaderSent( 485 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 486 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 487 } 488 489 @Test deleteAppConnectorExceptionTest()490 public void deleteAppConnectorExceptionTest() throws Exception { 491 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 492 mockAppConnectorsService.addException(exception); 493 494 try { 495 AppConnectorName name = AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 496 client.deleteAppConnectorAsync(name).get(); 497 Assert.fail("No exception raised"); 498 } catch (ExecutionException e) { 499 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 500 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 501 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 502 } 503 } 504 505 @Test deleteAppConnectorTest2()506 public void deleteAppConnectorTest2() throws Exception { 507 Empty expectedResponse = Empty.newBuilder().build(); 508 Operation resultOperation = 509 Operation.newBuilder() 510 .setName("deleteAppConnectorTest") 511 .setDone(true) 512 .setResponse(Any.pack(expectedResponse)) 513 .build(); 514 mockAppConnectorsService.addResponse(resultOperation); 515 516 String name = "name3373707"; 517 518 client.deleteAppConnectorAsync(name).get(); 519 520 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 521 Assert.assertEquals(1, actualRequests.size()); 522 DeleteAppConnectorRequest actualRequest = ((DeleteAppConnectorRequest) actualRequests.get(0)); 523 524 Assert.assertEquals(name, actualRequest.getName()); 525 Assert.assertTrue( 526 channelProvider.isHeaderSent( 527 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 528 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 529 } 530 531 @Test deleteAppConnectorExceptionTest2()532 public void deleteAppConnectorExceptionTest2() throws Exception { 533 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 534 mockAppConnectorsService.addException(exception); 535 536 try { 537 String name = "name3373707"; 538 client.deleteAppConnectorAsync(name).get(); 539 Assert.fail("No exception raised"); 540 } catch (ExecutionException e) { 541 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 542 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 543 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 544 } 545 } 546 547 @Test reportStatusTest()548 public void reportStatusTest() throws Exception { 549 AppConnector expectedResponse = 550 AppConnector.newBuilder() 551 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 552 .setCreateTime(Timestamp.newBuilder().build()) 553 .setUpdateTime(Timestamp.newBuilder().build()) 554 .putAllLabels(new HashMap<String, String>()) 555 .setDisplayName("displayName1714148973") 556 .setUid("uid115792") 557 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 558 .setResourceInfo(ResourceInfo.newBuilder().build()) 559 .build(); 560 Operation resultOperation = 561 Operation.newBuilder() 562 .setName("reportStatusTest") 563 .setDone(true) 564 .setResponse(Any.pack(expectedResponse)) 565 .build(); 566 mockAppConnectorsService.addResponse(resultOperation); 567 568 AppConnectorName appConnector = 569 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 570 ResourceInfo resourceInfo = ResourceInfo.newBuilder().build(); 571 572 AppConnector actualResponse = client.reportStatusAsync(appConnector, resourceInfo).get(); 573 Assert.assertEquals(expectedResponse, actualResponse); 574 575 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 576 Assert.assertEquals(1, actualRequests.size()); 577 ReportStatusRequest actualRequest = ((ReportStatusRequest) actualRequests.get(0)); 578 579 Assert.assertEquals(appConnector.toString(), actualRequest.getAppConnector()); 580 Assert.assertEquals(resourceInfo, actualRequest.getResourceInfo()); 581 Assert.assertTrue( 582 channelProvider.isHeaderSent( 583 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 584 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 585 } 586 587 @Test reportStatusExceptionTest()588 public void reportStatusExceptionTest() throws Exception { 589 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 590 mockAppConnectorsService.addException(exception); 591 592 try { 593 AppConnectorName appConnector = 594 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]"); 595 ResourceInfo resourceInfo = ResourceInfo.newBuilder().build(); 596 client.reportStatusAsync(appConnector, resourceInfo).get(); 597 Assert.fail("No exception raised"); 598 } catch (ExecutionException e) { 599 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 600 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 601 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 602 } 603 } 604 605 @Test reportStatusTest2()606 public void reportStatusTest2() throws Exception { 607 AppConnector expectedResponse = 608 AppConnector.newBuilder() 609 .setName(AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 610 .setCreateTime(Timestamp.newBuilder().build()) 611 .setUpdateTime(Timestamp.newBuilder().build()) 612 .putAllLabels(new HashMap<String, String>()) 613 .setDisplayName("displayName1714148973") 614 .setUid("uid115792") 615 .setPrincipalInfo(AppConnector.PrincipalInfo.newBuilder().build()) 616 .setResourceInfo(ResourceInfo.newBuilder().build()) 617 .build(); 618 Operation resultOperation = 619 Operation.newBuilder() 620 .setName("reportStatusTest") 621 .setDone(true) 622 .setResponse(Any.pack(expectedResponse)) 623 .build(); 624 mockAppConnectorsService.addResponse(resultOperation); 625 626 String appConnector = "appConnector1131114284"; 627 ResourceInfo resourceInfo = ResourceInfo.newBuilder().build(); 628 629 AppConnector actualResponse = client.reportStatusAsync(appConnector, resourceInfo).get(); 630 Assert.assertEquals(expectedResponse, actualResponse); 631 632 List<AbstractMessage> actualRequests = mockAppConnectorsService.getRequests(); 633 Assert.assertEquals(1, actualRequests.size()); 634 ReportStatusRequest actualRequest = ((ReportStatusRequest) actualRequests.get(0)); 635 636 Assert.assertEquals(appConnector, actualRequest.getAppConnector()); 637 Assert.assertEquals(resourceInfo, actualRequest.getResourceInfo()); 638 Assert.assertTrue( 639 channelProvider.isHeaderSent( 640 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 641 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 642 } 643 644 @Test reportStatusExceptionTest2()645 public void reportStatusExceptionTest2() throws Exception { 646 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 647 mockAppConnectorsService.addException(exception); 648 649 try { 650 String appConnector = "appConnector1131114284"; 651 ResourceInfo resourceInfo = ResourceInfo.newBuilder().build(); 652 client.reportStatusAsync(appConnector, resourceInfo).get(); 653 Assert.fail("No exception raised"); 654 } catch (ExecutionException e) { 655 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 656 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 657 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 658 } 659 } 660 661 @Test listLocationsTest()662 public void listLocationsTest() throws Exception { 663 Location responsesElement = Location.newBuilder().build(); 664 ListLocationsResponse expectedResponse = 665 ListLocationsResponse.newBuilder() 666 .setNextPageToken("") 667 .addAllLocations(Arrays.asList(responsesElement)) 668 .build(); 669 mockLocations.addResponse(expectedResponse); 670 671 ListLocationsRequest request = 672 ListLocationsRequest.newBuilder() 673 .setName("name3373707") 674 .setFilter("filter-1274492040") 675 .setPageSize(883849137) 676 .setPageToken("pageToken873572522") 677 .build(); 678 679 ListLocationsPagedResponse pagedListResponse = client.listLocations(request); 680 681 List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 682 683 Assert.assertEquals(1, resources.size()); 684 Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0)); 685 686 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 687 Assert.assertEquals(1, actualRequests.size()); 688 ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0)); 689 690 Assert.assertEquals(request.getName(), actualRequest.getName()); 691 Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); 692 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 693 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 694 Assert.assertTrue( 695 channelProvider.isHeaderSent( 696 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 697 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 698 } 699 700 @Test listLocationsExceptionTest()701 public void listLocationsExceptionTest() throws Exception { 702 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 703 mockLocations.addException(exception); 704 705 try { 706 ListLocationsRequest request = 707 ListLocationsRequest.newBuilder() 708 .setName("name3373707") 709 .setFilter("filter-1274492040") 710 .setPageSize(883849137) 711 .setPageToken("pageToken873572522") 712 .build(); 713 client.listLocations(request); 714 Assert.fail("No exception raised"); 715 } catch (InvalidArgumentException e) { 716 // Expected exception. 717 } 718 } 719 720 @Test getLocationTest()721 public void getLocationTest() throws Exception { 722 Location expectedResponse = 723 Location.newBuilder() 724 .setName("name3373707") 725 .setLocationId("locationId1541836720") 726 .setDisplayName("displayName1714148973") 727 .putAllLabels(new HashMap<String, String>()) 728 .setMetadata(Any.newBuilder().build()) 729 .build(); 730 mockLocations.addResponse(expectedResponse); 731 732 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 733 734 Location actualResponse = client.getLocation(request); 735 Assert.assertEquals(expectedResponse, actualResponse); 736 737 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 738 Assert.assertEquals(1, actualRequests.size()); 739 GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0)); 740 741 Assert.assertEquals(request.getName(), actualRequest.getName()); 742 Assert.assertTrue( 743 channelProvider.isHeaderSent( 744 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 745 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 746 } 747 748 @Test getLocationExceptionTest()749 public void getLocationExceptionTest() throws Exception { 750 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 751 mockLocations.addException(exception); 752 753 try { 754 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 755 client.getLocation(request); 756 Assert.fail("No exception raised"); 757 } catch (InvalidArgumentException e) { 758 // Expected exception. 759 } 760 } 761 762 @Test setIamPolicyTest()763 public void setIamPolicyTest() throws Exception { 764 Policy expectedResponse = 765 Policy.newBuilder() 766 .setVersion(351608024) 767 .addAllBindings(new ArrayList<Binding>()) 768 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 769 .setEtag(ByteString.EMPTY) 770 .build(); 771 mockIAMPolicy.addResponse(expectedResponse); 772 773 SetIamPolicyRequest request = 774 SetIamPolicyRequest.newBuilder() 775 .setResource( 776 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 777 .setPolicy(Policy.newBuilder().build()) 778 .setUpdateMask(FieldMask.newBuilder().build()) 779 .build(); 780 781 Policy actualResponse = client.setIamPolicy(request); 782 Assert.assertEquals(expectedResponse, actualResponse); 783 784 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 785 Assert.assertEquals(1, actualRequests.size()); 786 SetIamPolicyRequest actualRequest = ((SetIamPolicyRequest) actualRequests.get(0)); 787 788 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 789 Assert.assertEquals(request.getPolicy(), actualRequest.getPolicy()); 790 Assert.assertEquals(request.getUpdateMask(), actualRequest.getUpdateMask()); 791 Assert.assertTrue( 792 channelProvider.isHeaderSent( 793 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 794 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 795 } 796 797 @Test setIamPolicyExceptionTest()798 public void setIamPolicyExceptionTest() throws Exception { 799 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 800 mockIAMPolicy.addException(exception); 801 802 try { 803 SetIamPolicyRequest request = 804 SetIamPolicyRequest.newBuilder() 805 .setResource( 806 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 807 .setPolicy(Policy.newBuilder().build()) 808 .setUpdateMask(FieldMask.newBuilder().build()) 809 .build(); 810 client.setIamPolicy(request); 811 Assert.fail("No exception raised"); 812 } catch (InvalidArgumentException e) { 813 // Expected exception. 814 } 815 } 816 817 @Test getIamPolicyTest()818 public void getIamPolicyTest() throws Exception { 819 Policy expectedResponse = 820 Policy.newBuilder() 821 .setVersion(351608024) 822 .addAllBindings(new ArrayList<Binding>()) 823 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 824 .setEtag(ByteString.EMPTY) 825 .build(); 826 mockIAMPolicy.addResponse(expectedResponse); 827 828 GetIamPolicyRequest request = 829 GetIamPolicyRequest.newBuilder() 830 .setResource( 831 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 832 .setOptions(GetPolicyOptions.newBuilder().build()) 833 .build(); 834 835 Policy actualResponse = client.getIamPolicy(request); 836 Assert.assertEquals(expectedResponse, actualResponse); 837 838 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 839 Assert.assertEquals(1, actualRequests.size()); 840 GetIamPolicyRequest actualRequest = ((GetIamPolicyRequest) actualRequests.get(0)); 841 842 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 843 Assert.assertEquals(request.getOptions(), actualRequest.getOptions()); 844 Assert.assertTrue( 845 channelProvider.isHeaderSent( 846 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 847 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 848 } 849 850 @Test getIamPolicyExceptionTest()851 public void getIamPolicyExceptionTest() throws Exception { 852 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 853 mockIAMPolicy.addException(exception); 854 855 try { 856 GetIamPolicyRequest request = 857 GetIamPolicyRequest.newBuilder() 858 .setResource( 859 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 860 .setOptions(GetPolicyOptions.newBuilder().build()) 861 .build(); 862 client.getIamPolicy(request); 863 Assert.fail("No exception raised"); 864 } catch (InvalidArgumentException e) { 865 // Expected exception. 866 } 867 } 868 869 @Test testIamPermissionsTest()870 public void testIamPermissionsTest() throws Exception { 871 TestIamPermissionsResponse expectedResponse = 872 TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 873 mockIAMPolicy.addResponse(expectedResponse); 874 875 TestIamPermissionsRequest request = 876 TestIamPermissionsRequest.newBuilder() 877 .setResource( 878 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 879 .addAllPermissions(new ArrayList<String>()) 880 .build(); 881 882 TestIamPermissionsResponse actualResponse = client.testIamPermissions(request); 883 Assert.assertEquals(expectedResponse, actualResponse); 884 885 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 886 Assert.assertEquals(1, actualRequests.size()); 887 TestIamPermissionsRequest actualRequest = ((TestIamPermissionsRequest) actualRequests.get(0)); 888 889 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 890 Assert.assertEquals(request.getPermissionsList(), actualRequest.getPermissionsList()); 891 Assert.assertTrue( 892 channelProvider.isHeaderSent( 893 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 894 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 895 } 896 897 @Test testIamPermissionsExceptionTest()898 public void testIamPermissionsExceptionTest() throws Exception { 899 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 900 mockIAMPolicy.addException(exception); 901 902 try { 903 TestIamPermissionsRequest request = 904 TestIamPermissionsRequest.newBuilder() 905 .setResource( 906 AppConnectorName.of("[PROJECT]", "[LOCATION]", "[APP_CONNECTOR]").toString()) 907 .addAllPermissions(new ArrayList<String>()) 908 .build(); 909 client.testIamPermissions(request); 910 Assert.fail("No exception raised"); 911 } catch (InvalidArgumentException e) { 912 // Expected exception. 913 } 914 } 915 } 916