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.compute.v1; 18 19 import static com.google.cloud.compute.v1.NetworkEndpointGroupsClient.AggregatedListPagedResponse; 20 import static com.google.cloud.compute.v1.NetworkEndpointGroupsClient.ListNetworkEndpointsPagedResponse; 21 import static com.google.cloud.compute.v1.NetworkEndpointGroupsClient.ListPagedResponse; 22 23 import com.google.api.gax.core.NoCredentialsProvider; 24 import com.google.api.gax.httpjson.GaxHttpJsonProperties; 25 import com.google.api.gax.httpjson.testing.MockHttpService; 26 import com.google.api.gax.rpc.ApiClientHeaderProvider; 27 import com.google.api.gax.rpc.ApiException; 28 import com.google.api.gax.rpc.ApiExceptionFactory; 29 import com.google.api.gax.rpc.InvalidArgumentException; 30 import com.google.api.gax.rpc.StatusCode; 31 import com.google.api.gax.rpc.testing.FakeStatusCode; 32 import com.google.cloud.compute.v1.Operation.Status; 33 import com.google.cloud.compute.v1.stub.HttpJsonNetworkEndpointGroupsStub; 34 import com.google.common.collect.Lists; 35 import java.io.IOException; 36 import java.util.ArrayList; 37 import java.util.Arrays; 38 import java.util.Collections; 39 import java.util.HashMap; 40 import java.util.List; 41 import java.util.Map; 42 import java.util.concurrent.ExecutionException; 43 import javax.annotation.Generated; 44 import org.junit.After; 45 import org.junit.AfterClass; 46 import org.junit.Assert; 47 import org.junit.Before; 48 import org.junit.BeforeClass; 49 import org.junit.Test; 50 51 @Generated("by gapic-generator-java") 52 public class NetworkEndpointGroupsClientTest { 53 private static MockHttpService mockService; 54 private static NetworkEndpointGroupsClient client; 55 56 @BeforeClass startStaticServer()57 public static void startStaticServer() throws IOException { 58 mockService = 59 new MockHttpService( 60 HttpJsonNetworkEndpointGroupsStub.getMethodDescriptors(), 61 NetworkEndpointGroupsSettings.getDefaultEndpoint()); 62 NetworkEndpointGroupsSettings settings = 63 NetworkEndpointGroupsSettings.newBuilder() 64 .setTransportChannelProvider( 65 NetworkEndpointGroupsSettings.defaultHttpJsonTransportProviderBuilder() 66 .setHttpTransport(mockService) 67 .build()) 68 .setCredentialsProvider(NoCredentialsProvider.create()) 69 .build(); 70 client = NetworkEndpointGroupsClient.create(settings); 71 } 72 73 @AfterClass stopServer()74 public static void stopServer() { 75 client.close(); 76 } 77 78 @Before setUp()79 public void setUp() {} 80 81 @After tearDown()82 public void tearDown() throws Exception { 83 mockService.reset(); 84 } 85 86 @Test aggregatedListTest()87 public void aggregatedListTest() throws Exception { 88 NetworkEndpointGroupsScopedList responsesElement = 89 NetworkEndpointGroupsScopedList.newBuilder().build(); 90 NetworkEndpointGroupAggregatedList expectedResponse = 91 NetworkEndpointGroupAggregatedList.newBuilder() 92 .setNextPageToken("") 93 .putAllItems(Collections.singletonMap("items", responsesElement)) 94 .build(); 95 mockService.addResponse(expectedResponse); 96 97 String project = "project-6911"; 98 99 AggregatedListPagedResponse pagedListResponse = client.aggregatedList(project); 100 101 List<Map.Entry<String, NetworkEndpointGroupsScopedList>> resources = 102 Lists.newArrayList(pagedListResponse.iterateAll()); 103 104 Assert.assertEquals(1, resources.size()); 105 Assert.assertEquals( 106 expectedResponse.getItemsMap().entrySet().iterator().next(), resources.get(0)); 107 108 List<String> actualRequests = mockService.getRequestPaths(); 109 Assert.assertEquals(1, actualRequests.size()); 110 111 String apiClientHeaderKey = 112 mockService 113 .getRequestHeaders() 114 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 115 .iterator() 116 .next(); 117 Assert.assertTrue( 118 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 119 .matcher(apiClientHeaderKey) 120 .matches()); 121 } 122 123 @Test aggregatedListExceptionTest()124 public void aggregatedListExceptionTest() throws Exception { 125 ApiException exception = 126 ApiExceptionFactory.createException( 127 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 128 mockService.addException(exception); 129 130 try { 131 String project = "project-6911"; 132 client.aggregatedList(project); 133 Assert.fail("No exception raised"); 134 } catch (InvalidArgumentException e) { 135 // Expected exception. 136 } 137 } 138 139 @Test attachNetworkEndpointsTest()140 public void attachNetworkEndpointsTest() throws Exception { 141 Operation expectedResponse = 142 Operation.newBuilder() 143 .setClientOperationId("clientOperationId-1230366697") 144 .setCreationTimestamp("creationTimestamp-370203401") 145 .setDescription("description-1724546052") 146 .setEndTime("endTime-1607243192") 147 .setError(Error.newBuilder().build()) 148 .setHttpErrorMessage("httpErrorMessage1577303431") 149 .setHttpErrorStatusCode(0) 150 .setId(3355) 151 .setInsertTime("insertTime966165798") 152 .setKind("kind3292052") 153 .setName("name3373707") 154 .setOperationGroupId("operationGroupId1716161683") 155 .setOperationType("operationType91999553") 156 .setProgress(-1001078227) 157 .setRegion("region-934795532") 158 .setSelfLink("selfLink1191800166") 159 .setStartTime("startTime-2129294769") 160 .setStatus(Status.DONE) 161 .setStatusMessage("statusMessage-958704715") 162 .setTargetId(-815576439) 163 .setTargetLink("targetLink486368555") 164 .setUser("user3599307") 165 .addAllWarnings(new ArrayList<Warnings>()) 166 .setZone("zone3744684") 167 .build(); 168 mockService.addResponse(expectedResponse); 169 170 String project = "project-6911"; 171 String zone = "zone-5246"; 172 String networkEndpointGroup = "networkEndpointGroup-386"; 173 NetworkEndpointGroupsAttachEndpointsRequest 174 networkEndpointGroupsAttachEndpointsRequestResource = 175 NetworkEndpointGroupsAttachEndpointsRequest.newBuilder().build(); 176 177 Operation actualResponse = 178 client 179 .attachNetworkEndpointsAsync( 180 project, 181 zone, 182 networkEndpointGroup, 183 networkEndpointGroupsAttachEndpointsRequestResource) 184 .get(); 185 Assert.assertEquals(expectedResponse, actualResponse); 186 187 List<String> actualRequests = mockService.getRequestPaths(); 188 Assert.assertEquals(1, actualRequests.size()); 189 190 String apiClientHeaderKey = 191 mockService 192 .getRequestHeaders() 193 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 194 .iterator() 195 .next(); 196 Assert.assertTrue( 197 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 198 .matcher(apiClientHeaderKey) 199 .matches()); 200 } 201 202 @Test attachNetworkEndpointsExceptionTest()203 public void attachNetworkEndpointsExceptionTest() throws Exception { 204 ApiException exception = 205 ApiExceptionFactory.createException( 206 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 207 mockService.addException(exception); 208 209 try { 210 String project = "project-6911"; 211 String zone = "zone-5246"; 212 String networkEndpointGroup = "networkEndpointGroup-386"; 213 NetworkEndpointGroupsAttachEndpointsRequest 214 networkEndpointGroupsAttachEndpointsRequestResource = 215 NetworkEndpointGroupsAttachEndpointsRequest.newBuilder().build(); 216 client 217 .attachNetworkEndpointsAsync( 218 project, 219 zone, 220 networkEndpointGroup, 221 networkEndpointGroupsAttachEndpointsRequestResource) 222 .get(); 223 Assert.fail("No exception raised"); 224 } catch (ExecutionException e) { 225 } 226 } 227 228 @Test deleteTest()229 public void deleteTest() throws Exception { 230 Operation expectedResponse = 231 Operation.newBuilder() 232 .setClientOperationId("clientOperationId-1230366697") 233 .setCreationTimestamp("creationTimestamp-370203401") 234 .setDescription("description-1724546052") 235 .setEndTime("endTime-1607243192") 236 .setError(Error.newBuilder().build()) 237 .setHttpErrorMessage("httpErrorMessage1577303431") 238 .setHttpErrorStatusCode(0) 239 .setId(3355) 240 .setInsertTime("insertTime966165798") 241 .setKind("kind3292052") 242 .setName("name3373707") 243 .setOperationGroupId("operationGroupId1716161683") 244 .setOperationType("operationType91999553") 245 .setProgress(-1001078227) 246 .setRegion("region-934795532") 247 .setSelfLink("selfLink1191800166") 248 .setStartTime("startTime-2129294769") 249 .setStatus(Status.DONE) 250 .setStatusMessage("statusMessage-958704715") 251 .setTargetId(-815576439) 252 .setTargetLink("targetLink486368555") 253 .setUser("user3599307") 254 .addAllWarnings(new ArrayList<Warnings>()) 255 .setZone("zone3744684") 256 .build(); 257 mockService.addResponse(expectedResponse); 258 259 String project = "project-6911"; 260 String zone = "zone-5246"; 261 String networkEndpointGroup = "networkEndpointGroup-386"; 262 263 Operation actualResponse = client.deleteAsync(project, zone, networkEndpointGroup).get(); 264 Assert.assertEquals(expectedResponse, actualResponse); 265 266 List<String> actualRequests = mockService.getRequestPaths(); 267 Assert.assertEquals(1, actualRequests.size()); 268 269 String apiClientHeaderKey = 270 mockService 271 .getRequestHeaders() 272 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 273 .iterator() 274 .next(); 275 Assert.assertTrue( 276 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 277 .matcher(apiClientHeaderKey) 278 .matches()); 279 } 280 281 @Test deleteExceptionTest()282 public void deleteExceptionTest() throws Exception { 283 ApiException exception = 284 ApiExceptionFactory.createException( 285 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 286 mockService.addException(exception); 287 288 try { 289 String project = "project-6911"; 290 String zone = "zone-5246"; 291 String networkEndpointGroup = "networkEndpointGroup-386"; 292 client.deleteAsync(project, zone, networkEndpointGroup).get(); 293 Assert.fail("No exception raised"); 294 } catch (ExecutionException e) { 295 } 296 } 297 298 @Test detachNetworkEndpointsTest()299 public void detachNetworkEndpointsTest() throws Exception { 300 Operation expectedResponse = 301 Operation.newBuilder() 302 .setClientOperationId("clientOperationId-1230366697") 303 .setCreationTimestamp("creationTimestamp-370203401") 304 .setDescription("description-1724546052") 305 .setEndTime("endTime-1607243192") 306 .setError(Error.newBuilder().build()) 307 .setHttpErrorMessage("httpErrorMessage1577303431") 308 .setHttpErrorStatusCode(0) 309 .setId(3355) 310 .setInsertTime("insertTime966165798") 311 .setKind("kind3292052") 312 .setName("name3373707") 313 .setOperationGroupId("operationGroupId1716161683") 314 .setOperationType("operationType91999553") 315 .setProgress(-1001078227) 316 .setRegion("region-934795532") 317 .setSelfLink("selfLink1191800166") 318 .setStartTime("startTime-2129294769") 319 .setStatus(Status.DONE) 320 .setStatusMessage("statusMessage-958704715") 321 .setTargetId(-815576439) 322 .setTargetLink("targetLink486368555") 323 .setUser("user3599307") 324 .addAllWarnings(new ArrayList<Warnings>()) 325 .setZone("zone3744684") 326 .build(); 327 mockService.addResponse(expectedResponse); 328 329 String project = "project-6911"; 330 String zone = "zone-5246"; 331 String networkEndpointGroup = "networkEndpointGroup-386"; 332 NetworkEndpointGroupsDetachEndpointsRequest 333 networkEndpointGroupsDetachEndpointsRequestResource = 334 NetworkEndpointGroupsDetachEndpointsRequest.newBuilder().build(); 335 336 Operation actualResponse = 337 client 338 .detachNetworkEndpointsAsync( 339 project, 340 zone, 341 networkEndpointGroup, 342 networkEndpointGroupsDetachEndpointsRequestResource) 343 .get(); 344 Assert.assertEquals(expectedResponse, actualResponse); 345 346 List<String> actualRequests = mockService.getRequestPaths(); 347 Assert.assertEquals(1, actualRequests.size()); 348 349 String apiClientHeaderKey = 350 mockService 351 .getRequestHeaders() 352 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 353 .iterator() 354 .next(); 355 Assert.assertTrue( 356 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 357 .matcher(apiClientHeaderKey) 358 .matches()); 359 } 360 361 @Test detachNetworkEndpointsExceptionTest()362 public void detachNetworkEndpointsExceptionTest() throws Exception { 363 ApiException exception = 364 ApiExceptionFactory.createException( 365 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 366 mockService.addException(exception); 367 368 try { 369 String project = "project-6911"; 370 String zone = "zone-5246"; 371 String networkEndpointGroup = "networkEndpointGroup-386"; 372 NetworkEndpointGroupsDetachEndpointsRequest 373 networkEndpointGroupsDetachEndpointsRequestResource = 374 NetworkEndpointGroupsDetachEndpointsRequest.newBuilder().build(); 375 client 376 .detachNetworkEndpointsAsync( 377 project, 378 zone, 379 networkEndpointGroup, 380 networkEndpointGroupsDetachEndpointsRequestResource) 381 .get(); 382 Assert.fail("No exception raised"); 383 } catch (ExecutionException e) { 384 } 385 } 386 387 @Test getTest()388 public void getTest() throws Exception { 389 NetworkEndpointGroup expectedResponse = 390 NetworkEndpointGroup.newBuilder() 391 .putAllAnnotations(new HashMap<String, String>()) 392 .setAppEngine(NetworkEndpointGroupAppEngine.newBuilder().build()) 393 .setCloudFunction(NetworkEndpointGroupCloudFunction.newBuilder().build()) 394 .setCloudRun(NetworkEndpointGroupCloudRun.newBuilder().build()) 395 .setCreationTimestamp("creationTimestamp-370203401") 396 .setDefaultPort(-650363969) 397 .setDescription("description-1724546052") 398 .setId(3355) 399 .setKind("kind3292052") 400 .setName("name3373707") 401 .setNetwork("network1843485230") 402 .setNetworkEndpointType("networkEndpointType1733109693") 403 .setPscData(NetworkEndpointGroupPscData.newBuilder().build()) 404 .setPscTargetService("pscTargetService-1789055740") 405 .setRegion("region-934795532") 406 .setSelfLink("selfLink1191800166") 407 .setSize(3530753) 408 .setSubnetwork("subnetwork-1302785042") 409 .setZone("zone3744684") 410 .build(); 411 mockService.addResponse(expectedResponse); 412 413 String project = "project-6911"; 414 String zone = "zone-5246"; 415 String networkEndpointGroup = "networkEndpointGroup-386"; 416 417 NetworkEndpointGroup actualResponse = client.get(project, zone, networkEndpointGroup); 418 Assert.assertEquals(expectedResponse, actualResponse); 419 420 List<String> actualRequests = mockService.getRequestPaths(); 421 Assert.assertEquals(1, actualRequests.size()); 422 423 String apiClientHeaderKey = 424 mockService 425 .getRequestHeaders() 426 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 427 .iterator() 428 .next(); 429 Assert.assertTrue( 430 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 431 .matcher(apiClientHeaderKey) 432 .matches()); 433 } 434 435 @Test getExceptionTest()436 public void getExceptionTest() throws Exception { 437 ApiException exception = 438 ApiExceptionFactory.createException( 439 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 440 mockService.addException(exception); 441 442 try { 443 String project = "project-6911"; 444 String zone = "zone-5246"; 445 String networkEndpointGroup = "networkEndpointGroup-386"; 446 client.get(project, zone, networkEndpointGroup); 447 Assert.fail("No exception raised"); 448 } catch (InvalidArgumentException e) { 449 // Expected exception. 450 } 451 } 452 453 @Test insertTest()454 public void insertTest() throws Exception { 455 Operation expectedResponse = 456 Operation.newBuilder() 457 .setClientOperationId("clientOperationId-1230366697") 458 .setCreationTimestamp("creationTimestamp-370203401") 459 .setDescription("description-1724546052") 460 .setEndTime("endTime-1607243192") 461 .setError(Error.newBuilder().build()) 462 .setHttpErrorMessage("httpErrorMessage1577303431") 463 .setHttpErrorStatusCode(0) 464 .setId(3355) 465 .setInsertTime("insertTime966165798") 466 .setKind("kind3292052") 467 .setName("name3373707") 468 .setOperationGroupId("operationGroupId1716161683") 469 .setOperationType("operationType91999553") 470 .setProgress(-1001078227) 471 .setRegion("region-934795532") 472 .setSelfLink("selfLink1191800166") 473 .setStartTime("startTime-2129294769") 474 .setStatus(Status.DONE) 475 .setStatusMessage("statusMessage-958704715") 476 .setTargetId(-815576439) 477 .setTargetLink("targetLink486368555") 478 .setUser("user3599307") 479 .addAllWarnings(new ArrayList<Warnings>()) 480 .setZone("zone3744684") 481 .build(); 482 mockService.addResponse(expectedResponse); 483 484 String project = "project-6911"; 485 String zone = "zone-5246"; 486 NetworkEndpointGroup networkEndpointGroupResource = NetworkEndpointGroup.newBuilder().build(); 487 488 Operation actualResponse = 489 client.insertAsync(project, zone, networkEndpointGroupResource).get(); 490 Assert.assertEquals(expectedResponse, actualResponse); 491 492 List<String> actualRequests = mockService.getRequestPaths(); 493 Assert.assertEquals(1, actualRequests.size()); 494 495 String apiClientHeaderKey = 496 mockService 497 .getRequestHeaders() 498 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 499 .iterator() 500 .next(); 501 Assert.assertTrue( 502 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 503 .matcher(apiClientHeaderKey) 504 .matches()); 505 } 506 507 @Test insertExceptionTest()508 public void insertExceptionTest() throws Exception { 509 ApiException exception = 510 ApiExceptionFactory.createException( 511 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 512 mockService.addException(exception); 513 514 try { 515 String project = "project-6911"; 516 String zone = "zone-5246"; 517 NetworkEndpointGroup networkEndpointGroupResource = NetworkEndpointGroup.newBuilder().build(); 518 client.insertAsync(project, zone, networkEndpointGroupResource).get(); 519 Assert.fail("No exception raised"); 520 } catch (ExecutionException e) { 521 } 522 } 523 524 @Test listTest()525 public void listTest() throws Exception { 526 NetworkEndpointGroup responsesElement = NetworkEndpointGroup.newBuilder().build(); 527 NetworkEndpointGroupList expectedResponse = 528 NetworkEndpointGroupList.newBuilder() 529 .setNextPageToken("") 530 .addAllItems(Arrays.asList(responsesElement)) 531 .build(); 532 mockService.addResponse(expectedResponse); 533 534 String project = "project-6911"; 535 String zone = "zone-5246"; 536 537 ListPagedResponse pagedListResponse = client.list(project, zone); 538 539 List<NetworkEndpointGroup> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 540 541 Assert.assertEquals(1, resources.size()); 542 Assert.assertEquals(expectedResponse.getItemsList().get(0), resources.get(0)); 543 544 List<String> actualRequests = mockService.getRequestPaths(); 545 Assert.assertEquals(1, actualRequests.size()); 546 547 String apiClientHeaderKey = 548 mockService 549 .getRequestHeaders() 550 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 551 .iterator() 552 .next(); 553 Assert.assertTrue( 554 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 555 .matcher(apiClientHeaderKey) 556 .matches()); 557 } 558 559 @Test listExceptionTest()560 public void listExceptionTest() throws Exception { 561 ApiException exception = 562 ApiExceptionFactory.createException( 563 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 564 mockService.addException(exception); 565 566 try { 567 String project = "project-6911"; 568 String zone = "zone-5246"; 569 client.list(project, zone); 570 Assert.fail("No exception raised"); 571 } catch (InvalidArgumentException e) { 572 // Expected exception. 573 } 574 } 575 576 @Test listNetworkEndpointsTest()577 public void listNetworkEndpointsTest() throws Exception { 578 NetworkEndpointWithHealthStatus responsesElement = 579 NetworkEndpointWithHealthStatus.newBuilder().build(); 580 NetworkEndpointGroupsListNetworkEndpoints expectedResponse = 581 NetworkEndpointGroupsListNetworkEndpoints.newBuilder() 582 .setNextPageToken("") 583 .addAllItems(Arrays.asList(responsesElement)) 584 .build(); 585 mockService.addResponse(expectedResponse); 586 587 String project = "project-6911"; 588 String zone = "zone-5246"; 589 String networkEndpointGroup = "networkEndpointGroup-386"; 590 NetworkEndpointGroupsListEndpointsRequest networkEndpointGroupsListEndpointsRequestResource = 591 NetworkEndpointGroupsListEndpointsRequest.newBuilder().build(); 592 593 ListNetworkEndpointsPagedResponse pagedListResponse = 594 client.listNetworkEndpoints( 595 project, zone, networkEndpointGroup, networkEndpointGroupsListEndpointsRequestResource); 596 597 List<NetworkEndpointWithHealthStatus> resources = 598 Lists.newArrayList(pagedListResponse.iterateAll()); 599 600 Assert.assertEquals(1, resources.size()); 601 Assert.assertEquals(expectedResponse.getItemsList().get(0), resources.get(0)); 602 603 List<String> actualRequests = mockService.getRequestPaths(); 604 Assert.assertEquals(1, actualRequests.size()); 605 606 String apiClientHeaderKey = 607 mockService 608 .getRequestHeaders() 609 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 610 .iterator() 611 .next(); 612 Assert.assertTrue( 613 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 614 .matcher(apiClientHeaderKey) 615 .matches()); 616 } 617 618 @Test listNetworkEndpointsExceptionTest()619 public void listNetworkEndpointsExceptionTest() throws Exception { 620 ApiException exception = 621 ApiExceptionFactory.createException( 622 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 623 mockService.addException(exception); 624 625 try { 626 String project = "project-6911"; 627 String zone = "zone-5246"; 628 String networkEndpointGroup = "networkEndpointGroup-386"; 629 NetworkEndpointGroupsListEndpointsRequest networkEndpointGroupsListEndpointsRequestResource = 630 NetworkEndpointGroupsListEndpointsRequest.newBuilder().build(); 631 client.listNetworkEndpoints( 632 project, zone, networkEndpointGroup, networkEndpointGroupsListEndpointsRequestResource); 633 Assert.fail("No exception raised"); 634 } catch (InvalidArgumentException e) { 635 // Expected exception. 636 } 637 } 638 639 @Test testIamPermissionsTest()640 public void testIamPermissionsTest() throws Exception { 641 TestPermissionsResponse expectedResponse = 642 TestPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 643 mockService.addResponse(expectedResponse); 644 645 String project = "project-6911"; 646 String zone = "zone-5246"; 647 String resource = "resource-756"; 648 TestPermissionsRequest testPermissionsRequestResource = 649 TestPermissionsRequest.newBuilder().build(); 650 651 TestPermissionsResponse actualResponse = 652 client.testIamPermissions(project, zone, resource, testPermissionsRequestResource); 653 Assert.assertEquals(expectedResponse, actualResponse); 654 655 List<String> actualRequests = mockService.getRequestPaths(); 656 Assert.assertEquals(1, actualRequests.size()); 657 658 String apiClientHeaderKey = 659 mockService 660 .getRequestHeaders() 661 .get(ApiClientHeaderProvider.getDefaultApiClientHeaderKey()) 662 .iterator() 663 .next(); 664 Assert.assertTrue( 665 GaxHttpJsonProperties.getDefaultApiClientHeaderPattern() 666 .matcher(apiClientHeaderKey) 667 .matches()); 668 } 669 670 @Test testIamPermissionsExceptionTest()671 public void testIamPermissionsExceptionTest() throws Exception { 672 ApiException exception = 673 ApiExceptionFactory.createException( 674 new Exception(), FakeStatusCode.of(StatusCode.Code.INVALID_ARGUMENT), false); 675 mockService.addException(exception); 676 677 try { 678 String project = "project-6911"; 679 String zone = "zone-5246"; 680 String resource = "resource-756"; 681 TestPermissionsRequest testPermissionsRequestResource = 682 TestPermissionsRequest.newBuilder().build(); 683 client.testIamPermissions(project, zone, resource, testPermissionsRequestResource); 684 Assert.fail("No exception raised"); 685 } catch (InvalidArgumentException e) { 686 // Expected exception. 687 } 688 } 689 } 690