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.devtools.cloudbuild.v2; 18 19 import static com.google.cloud.devtools.cloudbuild.v2.RepositoryManagerClient.FetchLinkableRepositoriesPagedResponse; 20 import static com.google.cloud.devtools.cloudbuild.v2.RepositoryManagerClient.ListConnectionsPagedResponse; 21 import static com.google.cloud.devtools.cloudbuild.v2.RepositoryManagerClient.ListRepositoriesPagedResponse; 22 23 import com.google.api.gax.core.NoCredentialsProvider; 24 import com.google.api.gax.grpc.GaxGrpcProperties; 25 import com.google.api.gax.grpc.testing.LocalChannelProvider; 26 import com.google.api.gax.grpc.testing.MockGrpcService; 27 import com.google.api.gax.grpc.testing.MockServiceHelper; 28 import com.google.api.gax.rpc.ApiClientHeaderProvider; 29 import com.google.api.gax.rpc.InvalidArgumentException; 30 import com.google.api.gax.rpc.StatusCode; 31 import com.google.cloudbuild.v2.BatchCreateRepositoriesRequest; 32 import com.google.cloudbuild.v2.BatchCreateRepositoriesResponse; 33 import com.google.cloudbuild.v2.Connection; 34 import com.google.cloudbuild.v2.ConnectionName; 35 import com.google.cloudbuild.v2.CreateConnectionRequest; 36 import com.google.cloudbuild.v2.CreateRepositoryRequest; 37 import com.google.cloudbuild.v2.DeleteConnectionRequest; 38 import com.google.cloudbuild.v2.DeleteRepositoryRequest; 39 import com.google.cloudbuild.v2.FetchLinkableRepositoriesRequest; 40 import com.google.cloudbuild.v2.FetchLinkableRepositoriesResponse; 41 import com.google.cloudbuild.v2.FetchReadTokenRequest; 42 import com.google.cloudbuild.v2.FetchReadTokenResponse; 43 import com.google.cloudbuild.v2.FetchReadWriteTokenRequest; 44 import com.google.cloudbuild.v2.FetchReadWriteTokenResponse; 45 import com.google.cloudbuild.v2.GetConnectionRequest; 46 import com.google.cloudbuild.v2.GetRepositoryRequest; 47 import com.google.cloudbuild.v2.InstallationState; 48 import com.google.cloudbuild.v2.ListConnectionsRequest; 49 import com.google.cloudbuild.v2.ListConnectionsResponse; 50 import com.google.cloudbuild.v2.ListRepositoriesRequest; 51 import com.google.cloudbuild.v2.ListRepositoriesResponse; 52 import com.google.cloudbuild.v2.LocationName; 53 import com.google.cloudbuild.v2.Repository; 54 import com.google.cloudbuild.v2.RepositoryName; 55 import com.google.cloudbuild.v2.UpdateConnectionRequest; 56 import com.google.common.collect.Lists; 57 import com.google.iam.v1.AuditConfig; 58 import com.google.iam.v1.Binding; 59 import com.google.iam.v1.GetIamPolicyRequest; 60 import com.google.iam.v1.GetPolicyOptions; 61 import com.google.iam.v1.Policy; 62 import com.google.iam.v1.SetIamPolicyRequest; 63 import com.google.iam.v1.TestIamPermissionsRequest; 64 import com.google.iam.v1.TestIamPermissionsResponse; 65 import com.google.longrunning.Operation; 66 import com.google.protobuf.AbstractMessage; 67 import com.google.protobuf.Any; 68 import com.google.protobuf.ByteString; 69 import com.google.protobuf.Empty; 70 import com.google.protobuf.FieldMask; 71 import com.google.protobuf.Timestamp; 72 import io.grpc.StatusRuntimeException; 73 import java.io.IOException; 74 import java.util.ArrayList; 75 import java.util.Arrays; 76 import java.util.HashMap; 77 import java.util.List; 78 import java.util.UUID; 79 import java.util.concurrent.ExecutionException; 80 import javax.annotation.Generated; 81 import org.junit.After; 82 import org.junit.AfterClass; 83 import org.junit.Assert; 84 import org.junit.Before; 85 import org.junit.BeforeClass; 86 import org.junit.Test; 87 88 @Generated("by gapic-generator-java") 89 public class RepositoryManagerClientTest { 90 private static MockIAMPolicy mockIAMPolicy; 91 private static MockLocations mockLocations; 92 private static MockRepositoryManager mockRepositoryManager; 93 private static MockServiceHelper mockServiceHelper; 94 private LocalChannelProvider channelProvider; 95 private RepositoryManagerClient client; 96 97 @BeforeClass startStaticServer()98 public static void startStaticServer() { 99 mockRepositoryManager = new MockRepositoryManager(); 100 mockLocations = new MockLocations(); 101 mockIAMPolicy = new MockIAMPolicy(); 102 mockServiceHelper = 103 new MockServiceHelper( 104 UUID.randomUUID().toString(), 105 Arrays.<MockGrpcService>asList(mockRepositoryManager, mockLocations, mockIAMPolicy)); 106 mockServiceHelper.start(); 107 } 108 109 @AfterClass stopServer()110 public static void stopServer() { 111 mockServiceHelper.stop(); 112 } 113 114 @Before setUp()115 public void setUp() throws IOException { 116 mockServiceHelper.reset(); 117 channelProvider = mockServiceHelper.createChannelProvider(); 118 RepositoryManagerSettings settings = 119 RepositoryManagerSettings.newBuilder() 120 .setTransportChannelProvider(channelProvider) 121 .setCredentialsProvider(NoCredentialsProvider.create()) 122 .build(); 123 client = RepositoryManagerClient.create(settings); 124 } 125 126 @After tearDown()127 public void tearDown() throws Exception { 128 client.close(); 129 } 130 131 @Test createConnectionTest()132 public void createConnectionTest() throws Exception { 133 Connection expectedResponse = 134 Connection.newBuilder() 135 .setName(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 136 .setCreateTime(Timestamp.newBuilder().build()) 137 .setUpdateTime(Timestamp.newBuilder().build()) 138 .setInstallationState(InstallationState.newBuilder().build()) 139 .setDisabled(true) 140 .setReconciling(true) 141 .putAllAnnotations(new HashMap<String, String>()) 142 .setEtag("etag3123477") 143 .build(); 144 Operation resultOperation = 145 Operation.newBuilder() 146 .setName("createConnectionTest") 147 .setDone(true) 148 .setResponse(Any.pack(expectedResponse)) 149 .build(); 150 mockRepositoryManager.addResponse(resultOperation); 151 152 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 153 Connection connection = Connection.newBuilder().build(); 154 String connectionId = "connectionId1923106969"; 155 156 Connection actualResponse = 157 client.createConnectionAsync(parent, connection, connectionId).get(); 158 Assert.assertEquals(expectedResponse, actualResponse); 159 160 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 161 Assert.assertEquals(1, actualRequests.size()); 162 CreateConnectionRequest actualRequest = ((CreateConnectionRequest) actualRequests.get(0)); 163 164 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 165 Assert.assertEquals(connection, actualRequest.getConnection()); 166 Assert.assertEquals(connectionId, actualRequest.getConnectionId()); 167 Assert.assertTrue( 168 channelProvider.isHeaderSent( 169 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 170 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 171 } 172 173 @Test createConnectionExceptionTest()174 public void createConnectionExceptionTest() throws Exception { 175 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 176 mockRepositoryManager.addException(exception); 177 178 try { 179 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 180 Connection connection = Connection.newBuilder().build(); 181 String connectionId = "connectionId1923106969"; 182 client.createConnectionAsync(parent, connection, connectionId).get(); 183 Assert.fail("No exception raised"); 184 } catch (ExecutionException e) { 185 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 186 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 187 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 188 } 189 } 190 191 @Test createConnectionTest2()192 public void createConnectionTest2() throws Exception { 193 Connection expectedResponse = 194 Connection.newBuilder() 195 .setName(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 196 .setCreateTime(Timestamp.newBuilder().build()) 197 .setUpdateTime(Timestamp.newBuilder().build()) 198 .setInstallationState(InstallationState.newBuilder().build()) 199 .setDisabled(true) 200 .setReconciling(true) 201 .putAllAnnotations(new HashMap<String, String>()) 202 .setEtag("etag3123477") 203 .build(); 204 Operation resultOperation = 205 Operation.newBuilder() 206 .setName("createConnectionTest") 207 .setDone(true) 208 .setResponse(Any.pack(expectedResponse)) 209 .build(); 210 mockRepositoryManager.addResponse(resultOperation); 211 212 String parent = "parent-995424086"; 213 Connection connection = Connection.newBuilder().build(); 214 String connectionId = "connectionId1923106969"; 215 216 Connection actualResponse = 217 client.createConnectionAsync(parent, connection, connectionId).get(); 218 Assert.assertEquals(expectedResponse, actualResponse); 219 220 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 221 Assert.assertEquals(1, actualRequests.size()); 222 CreateConnectionRequest actualRequest = ((CreateConnectionRequest) actualRequests.get(0)); 223 224 Assert.assertEquals(parent, actualRequest.getParent()); 225 Assert.assertEquals(connection, actualRequest.getConnection()); 226 Assert.assertEquals(connectionId, actualRequest.getConnectionId()); 227 Assert.assertTrue( 228 channelProvider.isHeaderSent( 229 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 230 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 231 } 232 233 @Test createConnectionExceptionTest2()234 public void createConnectionExceptionTest2() throws Exception { 235 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 236 mockRepositoryManager.addException(exception); 237 238 try { 239 String parent = "parent-995424086"; 240 Connection connection = Connection.newBuilder().build(); 241 String connectionId = "connectionId1923106969"; 242 client.createConnectionAsync(parent, connection, connectionId).get(); 243 Assert.fail("No exception raised"); 244 } catch (ExecutionException e) { 245 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 246 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 247 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 248 } 249 } 250 251 @Test getConnectionTest()252 public void getConnectionTest() throws Exception { 253 Connection expectedResponse = 254 Connection.newBuilder() 255 .setName(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 256 .setCreateTime(Timestamp.newBuilder().build()) 257 .setUpdateTime(Timestamp.newBuilder().build()) 258 .setInstallationState(InstallationState.newBuilder().build()) 259 .setDisabled(true) 260 .setReconciling(true) 261 .putAllAnnotations(new HashMap<String, String>()) 262 .setEtag("etag3123477") 263 .build(); 264 mockRepositoryManager.addResponse(expectedResponse); 265 266 ConnectionName name = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 267 268 Connection actualResponse = client.getConnection(name); 269 Assert.assertEquals(expectedResponse, actualResponse); 270 271 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 272 Assert.assertEquals(1, actualRequests.size()); 273 GetConnectionRequest actualRequest = ((GetConnectionRequest) actualRequests.get(0)); 274 275 Assert.assertEquals(name.toString(), actualRequest.getName()); 276 Assert.assertTrue( 277 channelProvider.isHeaderSent( 278 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 279 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 280 } 281 282 @Test getConnectionExceptionTest()283 public void getConnectionExceptionTest() throws Exception { 284 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 285 mockRepositoryManager.addException(exception); 286 287 try { 288 ConnectionName name = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 289 client.getConnection(name); 290 Assert.fail("No exception raised"); 291 } catch (InvalidArgumentException e) { 292 // Expected exception. 293 } 294 } 295 296 @Test getConnectionTest2()297 public void getConnectionTest2() throws Exception { 298 Connection expectedResponse = 299 Connection.newBuilder() 300 .setName(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 301 .setCreateTime(Timestamp.newBuilder().build()) 302 .setUpdateTime(Timestamp.newBuilder().build()) 303 .setInstallationState(InstallationState.newBuilder().build()) 304 .setDisabled(true) 305 .setReconciling(true) 306 .putAllAnnotations(new HashMap<String, String>()) 307 .setEtag("etag3123477") 308 .build(); 309 mockRepositoryManager.addResponse(expectedResponse); 310 311 String name = "name3373707"; 312 313 Connection actualResponse = client.getConnection(name); 314 Assert.assertEquals(expectedResponse, actualResponse); 315 316 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 317 Assert.assertEquals(1, actualRequests.size()); 318 GetConnectionRequest actualRequest = ((GetConnectionRequest) actualRequests.get(0)); 319 320 Assert.assertEquals(name, actualRequest.getName()); 321 Assert.assertTrue( 322 channelProvider.isHeaderSent( 323 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 324 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 325 } 326 327 @Test getConnectionExceptionTest2()328 public void getConnectionExceptionTest2() throws Exception { 329 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 330 mockRepositoryManager.addException(exception); 331 332 try { 333 String name = "name3373707"; 334 client.getConnection(name); 335 Assert.fail("No exception raised"); 336 } catch (InvalidArgumentException e) { 337 // Expected exception. 338 } 339 } 340 341 @Test listConnectionsTest()342 public void listConnectionsTest() throws Exception { 343 Connection responsesElement = Connection.newBuilder().build(); 344 ListConnectionsResponse expectedResponse = 345 ListConnectionsResponse.newBuilder() 346 .setNextPageToken("") 347 .addAllConnections(Arrays.asList(responsesElement)) 348 .build(); 349 mockRepositoryManager.addResponse(expectedResponse); 350 351 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 352 353 ListConnectionsPagedResponse pagedListResponse = client.listConnections(parent); 354 355 List<Connection> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 356 357 Assert.assertEquals(1, resources.size()); 358 Assert.assertEquals(expectedResponse.getConnectionsList().get(0), resources.get(0)); 359 360 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 361 Assert.assertEquals(1, actualRequests.size()); 362 ListConnectionsRequest actualRequest = ((ListConnectionsRequest) actualRequests.get(0)); 363 364 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 365 Assert.assertTrue( 366 channelProvider.isHeaderSent( 367 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 368 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 369 } 370 371 @Test listConnectionsExceptionTest()372 public void listConnectionsExceptionTest() throws Exception { 373 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 374 mockRepositoryManager.addException(exception); 375 376 try { 377 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 378 client.listConnections(parent); 379 Assert.fail("No exception raised"); 380 } catch (InvalidArgumentException e) { 381 // Expected exception. 382 } 383 } 384 385 @Test listConnectionsTest2()386 public void listConnectionsTest2() throws Exception { 387 Connection responsesElement = Connection.newBuilder().build(); 388 ListConnectionsResponse expectedResponse = 389 ListConnectionsResponse.newBuilder() 390 .setNextPageToken("") 391 .addAllConnections(Arrays.asList(responsesElement)) 392 .build(); 393 mockRepositoryManager.addResponse(expectedResponse); 394 395 String parent = "parent-995424086"; 396 397 ListConnectionsPagedResponse pagedListResponse = client.listConnections(parent); 398 399 List<Connection> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 400 401 Assert.assertEquals(1, resources.size()); 402 Assert.assertEquals(expectedResponse.getConnectionsList().get(0), resources.get(0)); 403 404 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 405 Assert.assertEquals(1, actualRequests.size()); 406 ListConnectionsRequest actualRequest = ((ListConnectionsRequest) actualRequests.get(0)); 407 408 Assert.assertEquals(parent, actualRequest.getParent()); 409 Assert.assertTrue( 410 channelProvider.isHeaderSent( 411 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 412 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 413 } 414 415 @Test listConnectionsExceptionTest2()416 public void listConnectionsExceptionTest2() throws Exception { 417 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 418 mockRepositoryManager.addException(exception); 419 420 try { 421 String parent = "parent-995424086"; 422 client.listConnections(parent); 423 Assert.fail("No exception raised"); 424 } catch (InvalidArgumentException e) { 425 // Expected exception. 426 } 427 } 428 429 @Test updateConnectionTest()430 public void updateConnectionTest() throws Exception { 431 Connection expectedResponse = 432 Connection.newBuilder() 433 .setName(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 434 .setCreateTime(Timestamp.newBuilder().build()) 435 .setUpdateTime(Timestamp.newBuilder().build()) 436 .setInstallationState(InstallationState.newBuilder().build()) 437 .setDisabled(true) 438 .setReconciling(true) 439 .putAllAnnotations(new HashMap<String, String>()) 440 .setEtag("etag3123477") 441 .build(); 442 Operation resultOperation = 443 Operation.newBuilder() 444 .setName("updateConnectionTest") 445 .setDone(true) 446 .setResponse(Any.pack(expectedResponse)) 447 .build(); 448 mockRepositoryManager.addResponse(resultOperation); 449 450 Connection connection = Connection.newBuilder().build(); 451 FieldMask updateMask = FieldMask.newBuilder().build(); 452 453 Connection actualResponse = client.updateConnectionAsync(connection, updateMask).get(); 454 Assert.assertEquals(expectedResponse, actualResponse); 455 456 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 457 Assert.assertEquals(1, actualRequests.size()); 458 UpdateConnectionRequest actualRequest = ((UpdateConnectionRequest) actualRequests.get(0)); 459 460 Assert.assertEquals(connection, actualRequest.getConnection()); 461 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 462 Assert.assertTrue( 463 channelProvider.isHeaderSent( 464 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 465 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 466 } 467 468 @Test updateConnectionExceptionTest()469 public void updateConnectionExceptionTest() throws Exception { 470 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 471 mockRepositoryManager.addException(exception); 472 473 try { 474 Connection connection = Connection.newBuilder().build(); 475 FieldMask updateMask = FieldMask.newBuilder().build(); 476 client.updateConnectionAsync(connection, updateMask).get(); 477 Assert.fail("No exception raised"); 478 } catch (ExecutionException e) { 479 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 480 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 481 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 482 } 483 } 484 485 @Test deleteConnectionTest()486 public void deleteConnectionTest() throws Exception { 487 Empty expectedResponse = Empty.newBuilder().build(); 488 Operation resultOperation = 489 Operation.newBuilder() 490 .setName("deleteConnectionTest") 491 .setDone(true) 492 .setResponse(Any.pack(expectedResponse)) 493 .build(); 494 mockRepositoryManager.addResponse(resultOperation); 495 496 ConnectionName name = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 497 498 client.deleteConnectionAsync(name).get(); 499 500 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 501 Assert.assertEquals(1, actualRequests.size()); 502 DeleteConnectionRequest actualRequest = ((DeleteConnectionRequest) actualRequests.get(0)); 503 504 Assert.assertEquals(name.toString(), actualRequest.getName()); 505 Assert.assertTrue( 506 channelProvider.isHeaderSent( 507 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 508 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 509 } 510 511 @Test deleteConnectionExceptionTest()512 public void deleteConnectionExceptionTest() throws Exception { 513 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 514 mockRepositoryManager.addException(exception); 515 516 try { 517 ConnectionName name = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 518 client.deleteConnectionAsync(name).get(); 519 Assert.fail("No exception raised"); 520 } catch (ExecutionException e) { 521 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 522 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 523 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 524 } 525 } 526 527 @Test deleteConnectionTest2()528 public void deleteConnectionTest2() throws Exception { 529 Empty expectedResponse = Empty.newBuilder().build(); 530 Operation resultOperation = 531 Operation.newBuilder() 532 .setName("deleteConnectionTest") 533 .setDone(true) 534 .setResponse(Any.pack(expectedResponse)) 535 .build(); 536 mockRepositoryManager.addResponse(resultOperation); 537 538 String name = "name3373707"; 539 540 client.deleteConnectionAsync(name).get(); 541 542 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 543 Assert.assertEquals(1, actualRequests.size()); 544 DeleteConnectionRequest actualRequest = ((DeleteConnectionRequest) actualRequests.get(0)); 545 546 Assert.assertEquals(name, actualRequest.getName()); 547 Assert.assertTrue( 548 channelProvider.isHeaderSent( 549 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 550 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 551 } 552 553 @Test deleteConnectionExceptionTest2()554 public void deleteConnectionExceptionTest2() throws Exception { 555 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 556 mockRepositoryManager.addException(exception); 557 558 try { 559 String name = "name3373707"; 560 client.deleteConnectionAsync(name).get(); 561 Assert.fail("No exception raised"); 562 } catch (ExecutionException e) { 563 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 564 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 565 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 566 } 567 } 568 569 @Test createRepositoryTest()570 public void createRepositoryTest() throws Exception { 571 Repository expectedResponse = 572 Repository.newBuilder() 573 .setName( 574 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]") 575 .toString()) 576 .setRemoteUri("remoteUri1280517958") 577 .setCreateTime(Timestamp.newBuilder().build()) 578 .setUpdateTime(Timestamp.newBuilder().build()) 579 .putAllAnnotations(new HashMap<String, String>()) 580 .setEtag("etag3123477") 581 .build(); 582 Operation resultOperation = 583 Operation.newBuilder() 584 .setName("createRepositoryTest") 585 .setDone(true) 586 .setResponse(Any.pack(expectedResponse)) 587 .build(); 588 mockRepositoryManager.addResponse(resultOperation); 589 590 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 591 Repository repository = Repository.newBuilder().build(); 592 String repositoryId = "repositoryId2113747461"; 593 594 Repository actualResponse = 595 client.createRepositoryAsync(parent, repository, repositoryId).get(); 596 Assert.assertEquals(expectedResponse, actualResponse); 597 598 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 599 Assert.assertEquals(1, actualRequests.size()); 600 CreateRepositoryRequest actualRequest = ((CreateRepositoryRequest) actualRequests.get(0)); 601 602 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 603 Assert.assertEquals(repository, actualRequest.getRepository()); 604 Assert.assertEquals(repositoryId, actualRequest.getRepositoryId()); 605 Assert.assertTrue( 606 channelProvider.isHeaderSent( 607 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 608 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 609 } 610 611 @Test createRepositoryExceptionTest()612 public void createRepositoryExceptionTest() throws Exception { 613 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 614 mockRepositoryManager.addException(exception); 615 616 try { 617 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 618 Repository repository = Repository.newBuilder().build(); 619 String repositoryId = "repositoryId2113747461"; 620 client.createRepositoryAsync(parent, repository, repositoryId).get(); 621 Assert.fail("No exception raised"); 622 } catch (ExecutionException e) { 623 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 624 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 625 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 626 } 627 } 628 629 @Test createRepositoryTest2()630 public void createRepositoryTest2() throws Exception { 631 Repository expectedResponse = 632 Repository.newBuilder() 633 .setName( 634 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]") 635 .toString()) 636 .setRemoteUri("remoteUri1280517958") 637 .setCreateTime(Timestamp.newBuilder().build()) 638 .setUpdateTime(Timestamp.newBuilder().build()) 639 .putAllAnnotations(new HashMap<String, String>()) 640 .setEtag("etag3123477") 641 .build(); 642 Operation resultOperation = 643 Operation.newBuilder() 644 .setName("createRepositoryTest") 645 .setDone(true) 646 .setResponse(Any.pack(expectedResponse)) 647 .build(); 648 mockRepositoryManager.addResponse(resultOperation); 649 650 String parent = "parent-995424086"; 651 Repository repository = Repository.newBuilder().build(); 652 String repositoryId = "repositoryId2113747461"; 653 654 Repository actualResponse = 655 client.createRepositoryAsync(parent, repository, repositoryId).get(); 656 Assert.assertEquals(expectedResponse, actualResponse); 657 658 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 659 Assert.assertEquals(1, actualRequests.size()); 660 CreateRepositoryRequest actualRequest = ((CreateRepositoryRequest) actualRequests.get(0)); 661 662 Assert.assertEquals(parent, actualRequest.getParent()); 663 Assert.assertEquals(repository, actualRequest.getRepository()); 664 Assert.assertEquals(repositoryId, actualRequest.getRepositoryId()); 665 Assert.assertTrue( 666 channelProvider.isHeaderSent( 667 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 668 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 669 } 670 671 @Test createRepositoryExceptionTest2()672 public void createRepositoryExceptionTest2() throws Exception { 673 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 674 mockRepositoryManager.addException(exception); 675 676 try { 677 String parent = "parent-995424086"; 678 Repository repository = Repository.newBuilder().build(); 679 String repositoryId = "repositoryId2113747461"; 680 client.createRepositoryAsync(parent, repository, repositoryId).get(); 681 Assert.fail("No exception raised"); 682 } catch (ExecutionException e) { 683 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 684 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 685 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 686 } 687 } 688 689 @Test batchCreateRepositoriesTest()690 public void batchCreateRepositoriesTest() throws Exception { 691 BatchCreateRepositoriesResponse expectedResponse = 692 BatchCreateRepositoriesResponse.newBuilder() 693 .addAllRepositories(new ArrayList<Repository>()) 694 .build(); 695 Operation resultOperation = 696 Operation.newBuilder() 697 .setName("batchCreateRepositoriesTest") 698 .setDone(true) 699 .setResponse(Any.pack(expectedResponse)) 700 .build(); 701 mockRepositoryManager.addResponse(resultOperation); 702 703 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 704 List<CreateRepositoryRequest> requests = new ArrayList<>(); 705 706 BatchCreateRepositoriesResponse actualResponse = 707 client.batchCreateRepositoriesAsync(parent, requests).get(); 708 Assert.assertEquals(expectedResponse, actualResponse); 709 710 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 711 Assert.assertEquals(1, actualRequests.size()); 712 BatchCreateRepositoriesRequest actualRequest = 713 ((BatchCreateRepositoriesRequest) actualRequests.get(0)); 714 715 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 716 Assert.assertEquals(requests, actualRequest.getRequestsList()); 717 Assert.assertTrue( 718 channelProvider.isHeaderSent( 719 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 720 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 721 } 722 723 @Test batchCreateRepositoriesExceptionTest()724 public void batchCreateRepositoriesExceptionTest() throws Exception { 725 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 726 mockRepositoryManager.addException(exception); 727 728 try { 729 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 730 List<CreateRepositoryRequest> requests = new ArrayList<>(); 731 client.batchCreateRepositoriesAsync(parent, requests).get(); 732 Assert.fail("No exception raised"); 733 } catch (ExecutionException e) { 734 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 735 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 736 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 737 } 738 } 739 740 @Test batchCreateRepositoriesTest2()741 public void batchCreateRepositoriesTest2() throws Exception { 742 BatchCreateRepositoriesResponse expectedResponse = 743 BatchCreateRepositoriesResponse.newBuilder() 744 .addAllRepositories(new ArrayList<Repository>()) 745 .build(); 746 Operation resultOperation = 747 Operation.newBuilder() 748 .setName("batchCreateRepositoriesTest") 749 .setDone(true) 750 .setResponse(Any.pack(expectedResponse)) 751 .build(); 752 mockRepositoryManager.addResponse(resultOperation); 753 754 String parent = "parent-995424086"; 755 List<CreateRepositoryRequest> requests = new ArrayList<>(); 756 757 BatchCreateRepositoriesResponse actualResponse = 758 client.batchCreateRepositoriesAsync(parent, requests).get(); 759 Assert.assertEquals(expectedResponse, actualResponse); 760 761 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 762 Assert.assertEquals(1, actualRequests.size()); 763 BatchCreateRepositoriesRequest actualRequest = 764 ((BatchCreateRepositoriesRequest) actualRequests.get(0)); 765 766 Assert.assertEquals(parent, actualRequest.getParent()); 767 Assert.assertEquals(requests, actualRequest.getRequestsList()); 768 Assert.assertTrue( 769 channelProvider.isHeaderSent( 770 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 771 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 772 } 773 774 @Test batchCreateRepositoriesExceptionTest2()775 public void batchCreateRepositoriesExceptionTest2() throws Exception { 776 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 777 mockRepositoryManager.addException(exception); 778 779 try { 780 String parent = "parent-995424086"; 781 List<CreateRepositoryRequest> requests = new ArrayList<>(); 782 client.batchCreateRepositoriesAsync(parent, requests).get(); 783 Assert.fail("No exception raised"); 784 } catch (ExecutionException e) { 785 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 786 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 787 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 788 } 789 } 790 791 @Test getRepositoryTest()792 public void getRepositoryTest() throws Exception { 793 Repository expectedResponse = 794 Repository.newBuilder() 795 .setName( 796 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]") 797 .toString()) 798 .setRemoteUri("remoteUri1280517958") 799 .setCreateTime(Timestamp.newBuilder().build()) 800 .setUpdateTime(Timestamp.newBuilder().build()) 801 .putAllAnnotations(new HashMap<String, String>()) 802 .setEtag("etag3123477") 803 .build(); 804 mockRepositoryManager.addResponse(expectedResponse); 805 806 RepositoryName name = 807 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 808 809 Repository actualResponse = client.getRepository(name); 810 Assert.assertEquals(expectedResponse, actualResponse); 811 812 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 813 Assert.assertEquals(1, actualRequests.size()); 814 GetRepositoryRequest actualRequest = ((GetRepositoryRequest) actualRequests.get(0)); 815 816 Assert.assertEquals(name.toString(), actualRequest.getName()); 817 Assert.assertTrue( 818 channelProvider.isHeaderSent( 819 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 820 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 821 } 822 823 @Test getRepositoryExceptionTest()824 public void getRepositoryExceptionTest() throws Exception { 825 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 826 mockRepositoryManager.addException(exception); 827 828 try { 829 RepositoryName name = 830 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 831 client.getRepository(name); 832 Assert.fail("No exception raised"); 833 } catch (InvalidArgumentException e) { 834 // Expected exception. 835 } 836 } 837 838 @Test getRepositoryTest2()839 public void getRepositoryTest2() throws Exception { 840 Repository expectedResponse = 841 Repository.newBuilder() 842 .setName( 843 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]") 844 .toString()) 845 .setRemoteUri("remoteUri1280517958") 846 .setCreateTime(Timestamp.newBuilder().build()) 847 .setUpdateTime(Timestamp.newBuilder().build()) 848 .putAllAnnotations(new HashMap<String, String>()) 849 .setEtag("etag3123477") 850 .build(); 851 mockRepositoryManager.addResponse(expectedResponse); 852 853 String name = "name3373707"; 854 855 Repository actualResponse = client.getRepository(name); 856 Assert.assertEquals(expectedResponse, actualResponse); 857 858 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 859 Assert.assertEquals(1, actualRequests.size()); 860 GetRepositoryRequest actualRequest = ((GetRepositoryRequest) actualRequests.get(0)); 861 862 Assert.assertEquals(name, actualRequest.getName()); 863 Assert.assertTrue( 864 channelProvider.isHeaderSent( 865 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 866 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 867 } 868 869 @Test getRepositoryExceptionTest2()870 public void getRepositoryExceptionTest2() throws Exception { 871 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 872 mockRepositoryManager.addException(exception); 873 874 try { 875 String name = "name3373707"; 876 client.getRepository(name); 877 Assert.fail("No exception raised"); 878 } catch (InvalidArgumentException e) { 879 // Expected exception. 880 } 881 } 882 883 @Test listRepositoriesTest()884 public void listRepositoriesTest() throws Exception { 885 Repository responsesElement = Repository.newBuilder().build(); 886 ListRepositoriesResponse expectedResponse = 887 ListRepositoriesResponse.newBuilder() 888 .setNextPageToken("") 889 .addAllRepositories(Arrays.asList(responsesElement)) 890 .build(); 891 mockRepositoryManager.addResponse(expectedResponse); 892 893 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 894 895 ListRepositoriesPagedResponse pagedListResponse = client.listRepositories(parent); 896 897 List<Repository> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 898 899 Assert.assertEquals(1, resources.size()); 900 Assert.assertEquals(expectedResponse.getRepositoriesList().get(0), resources.get(0)); 901 902 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 903 Assert.assertEquals(1, actualRequests.size()); 904 ListRepositoriesRequest actualRequest = ((ListRepositoriesRequest) actualRequests.get(0)); 905 906 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 907 Assert.assertTrue( 908 channelProvider.isHeaderSent( 909 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 910 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 911 } 912 913 @Test listRepositoriesExceptionTest()914 public void listRepositoriesExceptionTest() throws Exception { 915 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 916 mockRepositoryManager.addException(exception); 917 918 try { 919 ConnectionName parent = ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]"); 920 client.listRepositories(parent); 921 Assert.fail("No exception raised"); 922 } catch (InvalidArgumentException e) { 923 // Expected exception. 924 } 925 } 926 927 @Test listRepositoriesTest2()928 public void listRepositoriesTest2() throws Exception { 929 Repository responsesElement = Repository.newBuilder().build(); 930 ListRepositoriesResponse expectedResponse = 931 ListRepositoriesResponse.newBuilder() 932 .setNextPageToken("") 933 .addAllRepositories(Arrays.asList(responsesElement)) 934 .build(); 935 mockRepositoryManager.addResponse(expectedResponse); 936 937 String parent = "parent-995424086"; 938 939 ListRepositoriesPagedResponse pagedListResponse = client.listRepositories(parent); 940 941 List<Repository> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 942 943 Assert.assertEquals(1, resources.size()); 944 Assert.assertEquals(expectedResponse.getRepositoriesList().get(0), resources.get(0)); 945 946 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 947 Assert.assertEquals(1, actualRequests.size()); 948 ListRepositoriesRequest actualRequest = ((ListRepositoriesRequest) actualRequests.get(0)); 949 950 Assert.assertEquals(parent, actualRequest.getParent()); 951 Assert.assertTrue( 952 channelProvider.isHeaderSent( 953 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 954 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 955 } 956 957 @Test listRepositoriesExceptionTest2()958 public void listRepositoriesExceptionTest2() throws Exception { 959 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 960 mockRepositoryManager.addException(exception); 961 962 try { 963 String parent = "parent-995424086"; 964 client.listRepositories(parent); 965 Assert.fail("No exception raised"); 966 } catch (InvalidArgumentException e) { 967 // Expected exception. 968 } 969 } 970 971 @Test deleteRepositoryTest()972 public void deleteRepositoryTest() throws Exception { 973 Empty expectedResponse = Empty.newBuilder().build(); 974 Operation resultOperation = 975 Operation.newBuilder() 976 .setName("deleteRepositoryTest") 977 .setDone(true) 978 .setResponse(Any.pack(expectedResponse)) 979 .build(); 980 mockRepositoryManager.addResponse(resultOperation); 981 982 RepositoryName name = 983 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 984 985 client.deleteRepositoryAsync(name).get(); 986 987 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 988 Assert.assertEquals(1, actualRequests.size()); 989 DeleteRepositoryRequest actualRequest = ((DeleteRepositoryRequest) actualRequests.get(0)); 990 991 Assert.assertEquals(name.toString(), actualRequest.getName()); 992 Assert.assertTrue( 993 channelProvider.isHeaderSent( 994 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 995 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 996 } 997 998 @Test deleteRepositoryExceptionTest()999 public void deleteRepositoryExceptionTest() throws Exception { 1000 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1001 mockRepositoryManager.addException(exception); 1002 1003 try { 1004 RepositoryName name = 1005 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 1006 client.deleteRepositoryAsync(name).get(); 1007 Assert.fail("No exception raised"); 1008 } catch (ExecutionException e) { 1009 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1010 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1011 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1012 } 1013 } 1014 1015 @Test deleteRepositoryTest2()1016 public void deleteRepositoryTest2() throws Exception { 1017 Empty expectedResponse = Empty.newBuilder().build(); 1018 Operation resultOperation = 1019 Operation.newBuilder() 1020 .setName("deleteRepositoryTest") 1021 .setDone(true) 1022 .setResponse(Any.pack(expectedResponse)) 1023 .build(); 1024 mockRepositoryManager.addResponse(resultOperation); 1025 1026 String name = "name3373707"; 1027 1028 client.deleteRepositoryAsync(name).get(); 1029 1030 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1031 Assert.assertEquals(1, actualRequests.size()); 1032 DeleteRepositoryRequest actualRequest = ((DeleteRepositoryRequest) actualRequests.get(0)); 1033 1034 Assert.assertEquals(name, actualRequest.getName()); 1035 Assert.assertTrue( 1036 channelProvider.isHeaderSent( 1037 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1038 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1039 } 1040 1041 @Test deleteRepositoryExceptionTest2()1042 public void deleteRepositoryExceptionTest2() throws Exception { 1043 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1044 mockRepositoryManager.addException(exception); 1045 1046 try { 1047 String name = "name3373707"; 1048 client.deleteRepositoryAsync(name).get(); 1049 Assert.fail("No exception raised"); 1050 } catch (ExecutionException e) { 1051 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1052 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1053 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1054 } 1055 } 1056 1057 @Test fetchReadWriteTokenTest()1058 public void fetchReadWriteTokenTest() throws Exception { 1059 FetchReadWriteTokenResponse expectedResponse = 1060 FetchReadWriteTokenResponse.newBuilder() 1061 .setToken("token110541305") 1062 .setExpirationTime(Timestamp.newBuilder().build()) 1063 .build(); 1064 mockRepositoryManager.addResponse(expectedResponse); 1065 1066 RepositoryName repository = 1067 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 1068 1069 FetchReadWriteTokenResponse actualResponse = client.fetchReadWriteToken(repository); 1070 Assert.assertEquals(expectedResponse, actualResponse); 1071 1072 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1073 Assert.assertEquals(1, actualRequests.size()); 1074 FetchReadWriteTokenRequest actualRequest = ((FetchReadWriteTokenRequest) actualRequests.get(0)); 1075 1076 Assert.assertEquals(repository.toString(), actualRequest.getRepository()); 1077 Assert.assertTrue( 1078 channelProvider.isHeaderSent( 1079 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1080 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1081 } 1082 1083 @Test fetchReadWriteTokenExceptionTest()1084 public void fetchReadWriteTokenExceptionTest() throws Exception { 1085 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1086 mockRepositoryManager.addException(exception); 1087 1088 try { 1089 RepositoryName repository = 1090 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 1091 client.fetchReadWriteToken(repository); 1092 Assert.fail("No exception raised"); 1093 } catch (InvalidArgumentException e) { 1094 // Expected exception. 1095 } 1096 } 1097 1098 @Test fetchReadWriteTokenTest2()1099 public void fetchReadWriteTokenTest2() throws Exception { 1100 FetchReadWriteTokenResponse expectedResponse = 1101 FetchReadWriteTokenResponse.newBuilder() 1102 .setToken("token110541305") 1103 .setExpirationTime(Timestamp.newBuilder().build()) 1104 .build(); 1105 mockRepositoryManager.addResponse(expectedResponse); 1106 1107 String repository = "repository1950800714"; 1108 1109 FetchReadWriteTokenResponse actualResponse = client.fetchReadWriteToken(repository); 1110 Assert.assertEquals(expectedResponse, actualResponse); 1111 1112 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1113 Assert.assertEquals(1, actualRequests.size()); 1114 FetchReadWriteTokenRequest actualRequest = ((FetchReadWriteTokenRequest) actualRequests.get(0)); 1115 1116 Assert.assertEquals(repository, actualRequest.getRepository()); 1117 Assert.assertTrue( 1118 channelProvider.isHeaderSent( 1119 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1120 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1121 } 1122 1123 @Test fetchReadWriteTokenExceptionTest2()1124 public void fetchReadWriteTokenExceptionTest2() throws Exception { 1125 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1126 mockRepositoryManager.addException(exception); 1127 1128 try { 1129 String repository = "repository1950800714"; 1130 client.fetchReadWriteToken(repository); 1131 Assert.fail("No exception raised"); 1132 } catch (InvalidArgumentException e) { 1133 // Expected exception. 1134 } 1135 } 1136 1137 @Test fetchReadTokenTest()1138 public void fetchReadTokenTest() throws Exception { 1139 FetchReadTokenResponse expectedResponse = 1140 FetchReadTokenResponse.newBuilder() 1141 .setToken("token110541305") 1142 .setExpirationTime(Timestamp.newBuilder().build()) 1143 .build(); 1144 mockRepositoryManager.addResponse(expectedResponse); 1145 1146 RepositoryName repository = 1147 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 1148 1149 FetchReadTokenResponse actualResponse = client.fetchReadToken(repository); 1150 Assert.assertEquals(expectedResponse, actualResponse); 1151 1152 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1153 Assert.assertEquals(1, actualRequests.size()); 1154 FetchReadTokenRequest actualRequest = ((FetchReadTokenRequest) actualRequests.get(0)); 1155 1156 Assert.assertEquals(repository.toString(), actualRequest.getRepository()); 1157 Assert.assertTrue( 1158 channelProvider.isHeaderSent( 1159 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1160 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1161 } 1162 1163 @Test fetchReadTokenExceptionTest()1164 public void fetchReadTokenExceptionTest() throws Exception { 1165 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1166 mockRepositoryManager.addException(exception); 1167 1168 try { 1169 RepositoryName repository = 1170 RepositoryName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]", "[REPOSITORY]"); 1171 client.fetchReadToken(repository); 1172 Assert.fail("No exception raised"); 1173 } catch (InvalidArgumentException e) { 1174 // Expected exception. 1175 } 1176 } 1177 1178 @Test fetchReadTokenTest2()1179 public void fetchReadTokenTest2() throws Exception { 1180 FetchReadTokenResponse expectedResponse = 1181 FetchReadTokenResponse.newBuilder() 1182 .setToken("token110541305") 1183 .setExpirationTime(Timestamp.newBuilder().build()) 1184 .build(); 1185 mockRepositoryManager.addResponse(expectedResponse); 1186 1187 String repository = "repository1950800714"; 1188 1189 FetchReadTokenResponse actualResponse = client.fetchReadToken(repository); 1190 Assert.assertEquals(expectedResponse, actualResponse); 1191 1192 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1193 Assert.assertEquals(1, actualRequests.size()); 1194 FetchReadTokenRequest actualRequest = ((FetchReadTokenRequest) actualRequests.get(0)); 1195 1196 Assert.assertEquals(repository, actualRequest.getRepository()); 1197 Assert.assertTrue( 1198 channelProvider.isHeaderSent( 1199 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1200 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1201 } 1202 1203 @Test fetchReadTokenExceptionTest2()1204 public void fetchReadTokenExceptionTest2() throws Exception { 1205 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1206 mockRepositoryManager.addException(exception); 1207 1208 try { 1209 String repository = "repository1950800714"; 1210 client.fetchReadToken(repository); 1211 Assert.fail("No exception raised"); 1212 } catch (InvalidArgumentException e) { 1213 // Expected exception. 1214 } 1215 } 1216 1217 @Test fetchLinkableRepositoriesTest()1218 public void fetchLinkableRepositoriesTest() throws Exception { 1219 Repository responsesElement = Repository.newBuilder().build(); 1220 FetchLinkableRepositoriesResponse expectedResponse = 1221 FetchLinkableRepositoriesResponse.newBuilder() 1222 .setNextPageToken("") 1223 .addAllRepositories(Arrays.asList(responsesElement)) 1224 .build(); 1225 mockRepositoryManager.addResponse(expectedResponse); 1226 1227 FetchLinkableRepositoriesRequest request = 1228 FetchLinkableRepositoriesRequest.newBuilder() 1229 .setConnection(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1230 .setPageSize(883849137) 1231 .setPageToken("pageToken873572522") 1232 .build(); 1233 1234 FetchLinkableRepositoriesPagedResponse pagedListResponse = 1235 client.fetchLinkableRepositories(request); 1236 1237 List<Repository> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1238 1239 Assert.assertEquals(1, resources.size()); 1240 Assert.assertEquals(expectedResponse.getRepositoriesList().get(0), resources.get(0)); 1241 1242 List<AbstractMessage> actualRequests = mockRepositoryManager.getRequests(); 1243 Assert.assertEquals(1, actualRequests.size()); 1244 FetchLinkableRepositoriesRequest actualRequest = 1245 ((FetchLinkableRepositoriesRequest) actualRequests.get(0)); 1246 1247 Assert.assertEquals(request.getConnection(), actualRequest.getConnection()); 1248 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 1249 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 1250 Assert.assertTrue( 1251 channelProvider.isHeaderSent( 1252 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1253 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1254 } 1255 1256 @Test fetchLinkableRepositoriesExceptionTest()1257 public void fetchLinkableRepositoriesExceptionTest() throws Exception { 1258 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1259 mockRepositoryManager.addException(exception); 1260 1261 try { 1262 FetchLinkableRepositoriesRequest request = 1263 FetchLinkableRepositoriesRequest.newBuilder() 1264 .setConnection( 1265 ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1266 .setPageSize(883849137) 1267 .setPageToken("pageToken873572522") 1268 .build(); 1269 client.fetchLinkableRepositories(request); 1270 Assert.fail("No exception raised"); 1271 } catch (InvalidArgumentException e) { 1272 // Expected exception. 1273 } 1274 } 1275 1276 @Test setIamPolicyTest()1277 public void setIamPolicyTest() throws Exception { 1278 Policy expectedResponse = 1279 Policy.newBuilder() 1280 .setVersion(351608024) 1281 .addAllBindings(new ArrayList<Binding>()) 1282 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 1283 .setEtag(ByteString.EMPTY) 1284 .build(); 1285 mockIAMPolicy.addResponse(expectedResponse); 1286 1287 SetIamPolicyRequest request = 1288 SetIamPolicyRequest.newBuilder() 1289 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1290 .setPolicy(Policy.newBuilder().build()) 1291 .setUpdateMask(FieldMask.newBuilder().build()) 1292 .build(); 1293 1294 Policy actualResponse = client.setIamPolicy(request); 1295 Assert.assertEquals(expectedResponse, actualResponse); 1296 1297 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1298 Assert.assertEquals(1, actualRequests.size()); 1299 SetIamPolicyRequest actualRequest = ((SetIamPolicyRequest) actualRequests.get(0)); 1300 1301 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1302 Assert.assertEquals(request.getPolicy(), actualRequest.getPolicy()); 1303 Assert.assertEquals(request.getUpdateMask(), actualRequest.getUpdateMask()); 1304 Assert.assertTrue( 1305 channelProvider.isHeaderSent( 1306 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1307 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1308 } 1309 1310 @Test setIamPolicyExceptionTest()1311 public void setIamPolicyExceptionTest() throws Exception { 1312 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1313 mockIAMPolicy.addException(exception); 1314 1315 try { 1316 SetIamPolicyRequest request = 1317 SetIamPolicyRequest.newBuilder() 1318 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1319 .setPolicy(Policy.newBuilder().build()) 1320 .setUpdateMask(FieldMask.newBuilder().build()) 1321 .build(); 1322 client.setIamPolicy(request); 1323 Assert.fail("No exception raised"); 1324 } catch (InvalidArgumentException e) { 1325 // Expected exception. 1326 } 1327 } 1328 1329 @Test getIamPolicyTest()1330 public void getIamPolicyTest() throws Exception { 1331 Policy expectedResponse = 1332 Policy.newBuilder() 1333 .setVersion(351608024) 1334 .addAllBindings(new ArrayList<Binding>()) 1335 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 1336 .setEtag(ByteString.EMPTY) 1337 .build(); 1338 mockIAMPolicy.addResponse(expectedResponse); 1339 1340 GetIamPolicyRequest request = 1341 GetIamPolicyRequest.newBuilder() 1342 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1343 .setOptions(GetPolicyOptions.newBuilder().build()) 1344 .build(); 1345 1346 Policy actualResponse = client.getIamPolicy(request); 1347 Assert.assertEquals(expectedResponse, actualResponse); 1348 1349 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1350 Assert.assertEquals(1, actualRequests.size()); 1351 GetIamPolicyRequest actualRequest = ((GetIamPolicyRequest) actualRequests.get(0)); 1352 1353 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1354 Assert.assertEquals(request.getOptions(), actualRequest.getOptions()); 1355 Assert.assertTrue( 1356 channelProvider.isHeaderSent( 1357 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1358 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1359 } 1360 1361 @Test getIamPolicyExceptionTest()1362 public void getIamPolicyExceptionTest() throws Exception { 1363 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1364 mockIAMPolicy.addException(exception); 1365 1366 try { 1367 GetIamPolicyRequest request = 1368 GetIamPolicyRequest.newBuilder() 1369 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1370 .setOptions(GetPolicyOptions.newBuilder().build()) 1371 .build(); 1372 client.getIamPolicy(request); 1373 Assert.fail("No exception raised"); 1374 } catch (InvalidArgumentException e) { 1375 // Expected exception. 1376 } 1377 } 1378 1379 @Test testIamPermissionsTest()1380 public void testIamPermissionsTest() throws Exception { 1381 TestIamPermissionsResponse expectedResponse = 1382 TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 1383 mockIAMPolicy.addResponse(expectedResponse); 1384 1385 TestIamPermissionsRequest request = 1386 TestIamPermissionsRequest.newBuilder() 1387 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1388 .addAllPermissions(new ArrayList<String>()) 1389 .build(); 1390 1391 TestIamPermissionsResponse actualResponse = client.testIamPermissions(request); 1392 Assert.assertEquals(expectedResponse, actualResponse); 1393 1394 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 1395 Assert.assertEquals(1, actualRequests.size()); 1396 TestIamPermissionsRequest actualRequest = ((TestIamPermissionsRequest) actualRequests.get(0)); 1397 1398 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 1399 Assert.assertEquals(request.getPermissionsList(), actualRequest.getPermissionsList()); 1400 Assert.assertTrue( 1401 channelProvider.isHeaderSent( 1402 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1403 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1404 } 1405 1406 @Test testIamPermissionsExceptionTest()1407 public void testIamPermissionsExceptionTest() throws Exception { 1408 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1409 mockIAMPolicy.addException(exception); 1410 1411 try { 1412 TestIamPermissionsRequest request = 1413 TestIamPermissionsRequest.newBuilder() 1414 .setResource(ConnectionName.of("[PROJECT]", "[LOCATION]", "[CONNECTION]").toString()) 1415 .addAllPermissions(new ArrayList<String>()) 1416 .build(); 1417 client.testIamPermissions(request); 1418 Assert.fail("No exception raised"); 1419 } catch (InvalidArgumentException e) { 1420 // Expected exception. 1421 } 1422 } 1423 } 1424