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.aiplatform.v1beta1; 18 19 import static com.google.cloud.aiplatform.v1beta1.FeaturestoreServiceClient.ListEntityTypesPagedResponse; 20 import static com.google.cloud.aiplatform.v1beta1.FeaturestoreServiceClient.ListFeaturesPagedResponse; 21 import static com.google.cloud.aiplatform.v1beta1.FeaturestoreServiceClient.ListFeaturestoresPagedResponse; 22 import static com.google.cloud.aiplatform.v1beta1.FeaturestoreServiceClient.ListLocationsPagedResponse; 23 import static com.google.cloud.aiplatform.v1beta1.FeaturestoreServiceClient.SearchFeaturesPagedResponse; 24 25 import com.google.api.gax.core.NoCredentialsProvider; 26 import com.google.api.gax.grpc.GaxGrpcProperties; 27 import com.google.api.gax.grpc.testing.LocalChannelProvider; 28 import com.google.api.gax.grpc.testing.MockGrpcService; 29 import com.google.api.gax.grpc.testing.MockServiceHelper; 30 import com.google.api.gax.rpc.ApiClientHeaderProvider; 31 import com.google.api.gax.rpc.InvalidArgumentException; 32 import com.google.api.gax.rpc.StatusCode; 33 import com.google.cloud.location.GetLocationRequest; 34 import com.google.cloud.location.ListLocationsRequest; 35 import com.google.cloud.location.ListLocationsResponse; 36 import com.google.cloud.location.Location; 37 import com.google.common.collect.Lists; 38 import com.google.iam.v1.AuditConfig; 39 import com.google.iam.v1.Binding; 40 import com.google.iam.v1.GetIamPolicyRequest; 41 import com.google.iam.v1.GetPolicyOptions; 42 import com.google.iam.v1.Policy; 43 import com.google.iam.v1.SetIamPolicyRequest; 44 import com.google.iam.v1.TestIamPermissionsRequest; 45 import com.google.iam.v1.TestIamPermissionsResponse; 46 import com.google.longrunning.Operation; 47 import com.google.protobuf.AbstractMessage; 48 import com.google.protobuf.Any; 49 import com.google.protobuf.ByteString; 50 import com.google.protobuf.Empty; 51 import com.google.protobuf.FieldMask; 52 import com.google.protobuf.Timestamp; 53 import io.grpc.StatusRuntimeException; 54 import java.io.IOException; 55 import java.util.ArrayList; 56 import java.util.Arrays; 57 import java.util.HashMap; 58 import java.util.List; 59 import java.util.UUID; 60 import java.util.concurrent.ExecutionException; 61 import javax.annotation.Generated; 62 import org.junit.After; 63 import org.junit.AfterClass; 64 import org.junit.Assert; 65 import org.junit.Before; 66 import org.junit.BeforeClass; 67 import org.junit.Test; 68 69 @Generated("by gapic-generator-java") 70 public class FeaturestoreServiceClientTest { 71 private static MockFeaturestoreService mockFeaturestoreService; 72 private static MockIAMPolicy mockIAMPolicy; 73 private static MockLocations mockLocations; 74 private static MockServiceHelper mockServiceHelper; 75 private LocalChannelProvider channelProvider; 76 private FeaturestoreServiceClient client; 77 78 @BeforeClass startStaticServer()79 public static void startStaticServer() { 80 mockFeaturestoreService = new MockFeaturestoreService(); 81 mockLocations = new MockLocations(); 82 mockIAMPolicy = new MockIAMPolicy(); 83 mockServiceHelper = 84 new MockServiceHelper( 85 UUID.randomUUID().toString(), 86 Arrays.<MockGrpcService>asList(mockFeaturestoreService, mockLocations, mockIAMPolicy)); 87 mockServiceHelper.start(); 88 } 89 90 @AfterClass stopServer()91 public static void stopServer() { 92 mockServiceHelper.stop(); 93 } 94 95 @Before setUp()96 public void setUp() throws IOException { 97 mockServiceHelper.reset(); 98 channelProvider = mockServiceHelper.createChannelProvider(); 99 FeaturestoreServiceSettings settings = 100 FeaturestoreServiceSettings.newBuilder() 101 .setTransportChannelProvider(channelProvider) 102 .setCredentialsProvider(NoCredentialsProvider.create()) 103 .build(); 104 client = FeaturestoreServiceClient.create(settings); 105 } 106 107 @After tearDown()108 public void tearDown() throws Exception { 109 client.close(); 110 } 111 112 @Test createFeaturestoreTest()113 public void createFeaturestoreTest() throws Exception { 114 Featurestore expectedResponse = 115 Featurestore.newBuilder() 116 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 117 .setCreateTime(Timestamp.newBuilder().build()) 118 .setUpdateTime(Timestamp.newBuilder().build()) 119 .setEtag("etag3123477") 120 .putAllLabels(new HashMap<String, String>()) 121 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 122 .setOnlineStorageTtlDays(1491501178) 123 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 124 .build(); 125 Operation resultOperation = 126 Operation.newBuilder() 127 .setName("createFeaturestoreTest") 128 .setDone(true) 129 .setResponse(Any.pack(expectedResponse)) 130 .build(); 131 mockFeaturestoreService.addResponse(resultOperation); 132 133 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 134 Featurestore featurestore = Featurestore.newBuilder().build(); 135 136 Featurestore actualResponse = client.createFeaturestoreAsync(parent, featurestore).get(); 137 Assert.assertEquals(expectedResponse, actualResponse); 138 139 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 140 Assert.assertEquals(1, actualRequests.size()); 141 CreateFeaturestoreRequest actualRequest = ((CreateFeaturestoreRequest) actualRequests.get(0)); 142 143 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 144 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 145 Assert.assertTrue( 146 channelProvider.isHeaderSent( 147 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 148 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 149 } 150 151 @Test createFeaturestoreExceptionTest()152 public void createFeaturestoreExceptionTest() throws Exception { 153 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 154 mockFeaturestoreService.addException(exception); 155 156 try { 157 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 158 Featurestore featurestore = Featurestore.newBuilder().build(); 159 client.createFeaturestoreAsync(parent, featurestore).get(); 160 Assert.fail("No exception raised"); 161 } catch (ExecutionException e) { 162 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 163 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 164 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 165 } 166 } 167 168 @Test createFeaturestoreTest2()169 public void createFeaturestoreTest2() throws Exception { 170 Featurestore expectedResponse = 171 Featurestore.newBuilder() 172 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 173 .setCreateTime(Timestamp.newBuilder().build()) 174 .setUpdateTime(Timestamp.newBuilder().build()) 175 .setEtag("etag3123477") 176 .putAllLabels(new HashMap<String, String>()) 177 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 178 .setOnlineStorageTtlDays(1491501178) 179 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 180 .build(); 181 Operation resultOperation = 182 Operation.newBuilder() 183 .setName("createFeaturestoreTest") 184 .setDone(true) 185 .setResponse(Any.pack(expectedResponse)) 186 .build(); 187 mockFeaturestoreService.addResponse(resultOperation); 188 189 String parent = "parent-995424086"; 190 Featurestore featurestore = Featurestore.newBuilder().build(); 191 192 Featurestore actualResponse = client.createFeaturestoreAsync(parent, featurestore).get(); 193 Assert.assertEquals(expectedResponse, actualResponse); 194 195 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 196 Assert.assertEquals(1, actualRequests.size()); 197 CreateFeaturestoreRequest actualRequest = ((CreateFeaturestoreRequest) actualRequests.get(0)); 198 199 Assert.assertEquals(parent, actualRequest.getParent()); 200 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 201 Assert.assertTrue( 202 channelProvider.isHeaderSent( 203 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 204 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 205 } 206 207 @Test createFeaturestoreExceptionTest2()208 public void createFeaturestoreExceptionTest2() throws Exception { 209 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 210 mockFeaturestoreService.addException(exception); 211 212 try { 213 String parent = "parent-995424086"; 214 Featurestore featurestore = Featurestore.newBuilder().build(); 215 client.createFeaturestoreAsync(parent, featurestore).get(); 216 Assert.fail("No exception raised"); 217 } catch (ExecutionException e) { 218 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 219 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 220 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 221 } 222 } 223 224 @Test createFeaturestoreTest3()225 public void createFeaturestoreTest3() throws Exception { 226 Featurestore expectedResponse = 227 Featurestore.newBuilder() 228 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 229 .setCreateTime(Timestamp.newBuilder().build()) 230 .setUpdateTime(Timestamp.newBuilder().build()) 231 .setEtag("etag3123477") 232 .putAllLabels(new HashMap<String, String>()) 233 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 234 .setOnlineStorageTtlDays(1491501178) 235 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 236 .build(); 237 Operation resultOperation = 238 Operation.newBuilder() 239 .setName("createFeaturestoreTest") 240 .setDone(true) 241 .setResponse(Any.pack(expectedResponse)) 242 .build(); 243 mockFeaturestoreService.addResponse(resultOperation); 244 245 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 246 Featurestore featurestore = Featurestore.newBuilder().build(); 247 String featurestoreId = "featurestoreId-1315851738"; 248 249 Featurestore actualResponse = 250 client.createFeaturestoreAsync(parent, featurestore, featurestoreId).get(); 251 Assert.assertEquals(expectedResponse, actualResponse); 252 253 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 254 Assert.assertEquals(1, actualRequests.size()); 255 CreateFeaturestoreRequest actualRequest = ((CreateFeaturestoreRequest) actualRequests.get(0)); 256 257 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 258 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 259 Assert.assertEquals(featurestoreId, actualRequest.getFeaturestoreId()); 260 Assert.assertTrue( 261 channelProvider.isHeaderSent( 262 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 263 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 264 } 265 266 @Test createFeaturestoreExceptionTest3()267 public void createFeaturestoreExceptionTest3() throws Exception { 268 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 269 mockFeaturestoreService.addException(exception); 270 271 try { 272 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 273 Featurestore featurestore = Featurestore.newBuilder().build(); 274 String featurestoreId = "featurestoreId-1315851738"; 275 client.createFeaturestoreAsync(parent, featurestore, featurestoreId).get(); 276 Assert.fail("No exception raised"); 277 } catch (ExecutionException e) { 278 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 279 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 280 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 281 } 282 } 283 284 @Test createFeaturestoreTest4()285 public void createFeaturestoreTest4() throws Exception { 286 Featurestore expectedResponse = 287 Featurestore.newBuilder() 288 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 289 .setCreateTime(Timestamp.newBuilder().build()) 290 .setUpdateTime(Timestamp.newBuilder().build()) 291 .setEtag("etag3123477") 292 .putAllLabels(new HashMap<String, String>()) 293 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 294 .setOnlineStorageTtlDays(1491501178) 295 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 296 .build(); 297 Operation resultOperation = 298 Operation.newBuilder() 299 .setName("createFeaturestoreTest") 300 .setDone(true) 301 .setResponse(Any.pack(expectedResponse)) 302 .build(); 303 mockFeaturestoreService.addResponse(resultOperation); 304 305 String parent = "parent-995424086"; 306 Featurestore featurestore = Featurestore.newBuilder().build(); 307 String featurestoreId = "featurestoreId-1315851738"; 308 309 Featurestore actualResponse = 310 client.createFeaturestoreAsync(parent, featurestore, featurestoreId).get(); 311 Assert.assertEquals(expectedResponse, actualResponse); 312 313 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 314 Assert.assertEquals(1, actualRequests.size()); 315 CreateFeaturestoreRequest actualRequest = ((CreateFeaturestoreRequest) actualRequests.get(0)); 316 317 Assert.assertEquals(parent, actualRequest.getParent()); 318 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 319 Assert.assertEquals(featurestoreId, actualRequest.getFeaturestoreId()); 320 Assert.assertTrue( 321 channelProvider.isHeaderSent( 322 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 323 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 324 } 325 326 @Test createFeaturestoreExceptionTest4()327 public void createFeaturestoreExceptionTest4() throws Exception { 328 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 329 mockFeaturestoreService.addException(exception); 330 331 try { 332 String parent = "parent-995424086"; 333 Featurestore featurestore = Featurestore.newBuilder().build(); 334 String featurestoreId = "featurestoreId-1315851738"; 335 client.createFeaturestoreAsync(parent, featurestore, featurestoreId).get(); 336 Assert.fail("No exception raised"); 337 } catch (ExecutionException e) { 338 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 339 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 340 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 341 } 342 } 343 344 @Test getFeaturestoreTest()345 public void getFeaturestoreTest() throws Exception { 346 Featurestore expectedResponse = 347 Featurestore.newBuilder() 348 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 349 .setCreateTime(Timestamp.newBuilder().build()) 350 .setUpdateTime(Timestamp.newBuilder().build()) 351 .setEtag("etag3123477") 352 .putAllLabels(new HashMap<String, String>()) 353 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 354 .setOnlineStorageTtlDays(1491501178) 355 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 356 .build(); 357 mockFeaturestoreService.addResponse(expectedResponse); 358 359 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 360 361 Featurestore actualResponse = client.getFeaturestore(name); 362 Assert.assertEquals(expectedResponse, actualResponse); 363 364 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 365 Assert.assertEquals(1, actualRequests.size()); 366 GetFeaturestoreRequest actualRequest = ((GetFeaturestoreRequest) actualRequests.get(0)); 367 368 Assert.assertEquals(name.toString(), actualRequest.getName()); 369 Assert.assertTrue( 370 channelProvider.isHeaderSent( 371 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 372 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 373 } 374 375 @Test getFeaturestoreExceptionTest()376 public void getFeaturestoreExceptionTest() throws Exception { 377 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 378 mockFeaturestoreService.addException(exception); 379 380 try { 381 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 382 client.getFeaturestore(name); 383 Assert.fail("No exception raised"); 384 } catch (InvalidArgumentException e) { 385 // Expected exception. 386 } 387 } 388 389 @Test getFeaturestoreTest2()390 public void getFeaturestoreTest2() throws Exception { 391 Featurestore expectedResponse = 392 Featurestore.newBuilder() 393 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 394 .setCreateTime(Timestamp.newBuilder().build()) 395 .setUpdateTime(Timestamp.newBuilder().build()) 396 .setEtag("etag3123477") 397 .putAllLabels(new HashMap<String, String>()) 398 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 399 .setOnlineStorageTtlDays(1491501178) 400 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 401 .build(); 402 mockFeaturestoreService.addResponse(expectedResponse); 403 404 String name = "name3373707"; 405 406 Featurestore actualResponse = client.getFeaturestore(name); 407 Assert.assertEquals(expectedResponse, actualResponse); 408 409 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 410 Assert.assertEquals(1, actualRequests.size()); 411 GetFeaturestoreRequest actualRequest = ((GetFeaturestoreRequest) actualRequests.get(0)); 412 413 Assert.assertEquals(name, actualRequest.getName()); 414 Assert.assertTrue( 415 channelProvider.isHeaderSent( 416 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 417 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 418 } 419 420 @Test getFeaturestoreExceptionTest2()421 public void getFeaturestoreExceptionTest2() throws Exception { 422 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 423 mockFeaturestoreService.addException(exception); 424 425 try { 426 String name = "name3373707"; 427 client.getFeaturestore(name); 428 Assert.fail("No exception raised"); 429 } catch (InvalidArgumentException e) { 430 // Expected exception. 431 } 432 } 433 434 @Test listFeaturestoresTest()435 public void listFeaturestoresTest() throws Exception { 436 Featurestore responsesElement = Featurestore.newBuilder().build(); 437 ListFeaturestoresResponse expectedResponse = 438 ListFeaturestoresResponse.newBuilder() 439 .setNextPageToken("") 440 .addAllFeaturestores(Arrays.asList(responsesElement)) 441 .build(); 442 mockFeaturestoreService.addResponse(expectedResponse); 443 444 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 445 446 ListFeaturestoresPagedResponse pagedListResponse = client.listFeaturestores(parent); 447 448 List<Featurestore> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 449 450 Assert.assertEquals(1, resources.size()); 451 Assert.assertEquals(expectedResponse.getFeaturestoresList().get(0), resources.get(0)); 452 453 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 454 Assert.assertEquals(1, actualRequests.size()); 455 ListFeaturestoresRequest actualRequest = ((ListFeaturestoresRequest) actualRequests.get(0)); 456 457 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 458 Assert.assertTrue( 459 channelProvider.isHeaderSent( 460 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 461 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 462 } 463 464 @Test listFeaturestoresExceptionTest()465 public void listFeaturestoresExceptionTest() throws Exception { 466 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 467 mockFeaturestoreService.addException(exception); 468 469 try { 470 LocationName parent = LocationName.of("[PROJECT]", "[LOCATION]"); 471 client.listFeaturestores(parent); 472 Assert.fail("No exception raised"); 473 } catch (InvalidArgumentException e) { 474 // Expected exception. 475 } 476 } 477 478 @Test listFeaturestoresTest2()479 public void listFeaturestoresTest2() throws Exception { 480 Featurestore responsesElement = Featurestore.newBuilder().build(); 481 ListFeaturestoresResponse expectedResponse = 482 ListFeaturestoresResponse.newBuilder() 483 .setNextPageToken("") 484 .addAllFeaturestores(Arrays.asList(responsesElement)) 485 .build(); 486 mockFeaturestoreService.addResponse(expectedResponse); 487 488 String parent = "parent-995424086"; 489 490 ListFeaturestoresPagedResponse pagedListResponse = client.listFeaturestores(parent); 491 492 List<Featurestore> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 493 494 Assert.assertEquals(1, resources.size()); 495 Assert.assertEquals(expectedResponse.getFeaturestoresList().get(0), resources.get(0)); 496 497 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 498 Assert.assertEquals(1, actualRequests.size()); 499 ListFeaturestoresRequest actualRequest = ((ListFeaturestoresRequest) actualRequests.get(0)); 500 501 Assert.assertEquals(parent, actualRequest.getParent()); 502 Assert.assertTrue( 503 channelProvider.isHeaderSent( 504 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 505 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 506 } 507 508 @Test listFeaturestoresExceptionTest2()509 public void listFeaturestoresExceptionTest2() throws Exception { 510 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 511 mockFeaturestoreService.addException(exception); 512 513 try { 514 String parent = "parent-995424086"; 515 client.listFeaturestores(parent); 516 Assert.fail("No exception raised"); 517 } catch (InvalidArgumentException e) { 518 // Expected exception. 519 } 520 } 521 522 @Test updateFeaturestoreTest()523 public void updateFeaturestoreTest() throws Exception { 524 Featurestore expectedResponse = 525 Featurestore.newBuilder() 526 .setName(FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]").toString()) 527 .setCreateTime(Timestamp.newBuilder().build()) 528 .setUpdateTime(Timestamp.newBuilder().build()) 529 .setEtag("etag3123477") 530 .putAllLabels(new HashMap<String, String>()) 531 .setOnlineServingConfig(Featurestore.OnlineServingConfig.newBuilder().build()) 532 .setOnlineStorageTtlDays(1491501178) 533 .setEncryptionSpec(EncryptionSpec.newBuilder().build()) 534 .build(); 535 Operation resultOperation = 536 Operation.newBuilder() 537 .setName("updateFeaturestoreTest") 538 .setDone(true) 539 .setResponse(Any.pack(expectedResponse)) 540 .build(); 541 mockFeaturestoreService.addResponse(resultOperation); 542 543 Featurestore featurestore = Featurestore.newBuilder().build(); 544 FieldMask updateMask = FieldMask.newBuilder().build(); 545 546 Featurestore actualResponse = client.updateFeaturestoreAsync(featurestore, updateMask).get(); 547 Assert.assertEquals(expectedResponse, actualResponse); 548 549 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 550 Assert.assertEquals(1, actualRequests.size()); 551 UpdateFeaturestoreRequest actualRequest = ((UpdateFeaturestoreRequest) actualRequests.get(0)); 552 553 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 554 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 555 Assert.assertTrue( 556 channelProvider.isHeaderSent( 557 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 558 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 559 } 560 561 @Test updateFeaturestoreExceptionTest()562 public void updateFeaturestoreExceptionTest() throws Exception { 563 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 564 mockFeaturestoreService.addException(exception); 565 566 try { 567 Featurestore featurestore = Featurestore.newBuilder().build(); 568 FieldMask updateMask = FieldMask.newBuilder().build(); 569 client.updateFeaturestoreAsync(featurestore, updateMask).get(); 570 Assert.fail("No exception raised"); 571 } catch (ExecutionException e) { 572 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 573 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 574 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 575 } 576 } 577 578 @Test deleteFeaturestoreTest()579 public void deleteFeaturestoreTest() throws Exception { 580 Empty expectedResponse = Empty.newBuilder().build(); 581 Operation resultOperation = 582 Operation.newBuilder() 583 .setName("deleteFeaturestoreTest") 584 .setDone(true) 585 .setResponse(Any.pack(expectedResponse)) 586 .build(); 587 mockFeaturestoreService.addResponse(resultOperation); 588 589 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 590 591 client.deleteFeaturestoreAsync(name).get(); 592 593 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 594 Assert.assertEquals(1, actualRequests.size()); 595 DeleteFeaturestoreRequest actualRequest = ((DeleteFeaturestoreRequest) actualRequests.get(0)); 596 597 Assert.assertEquals(name.toString(), actualRequest.getName()); 598 Assert.assertTrue( 599 channelProvider.isHeaderSent( 600 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 601 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 602 } 603 604 @Test deleteFeaturestoreExceptionTest()605 public void deleteFeaturestoreExceptionTest() throws Exception { 606 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 607 mockFeaturestoreService.addException(exception); 608 609 try { 610 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 611 client.deleteFeaturestoreAsync(name).get(); 612 Assert.fail("No exception raised"); 613 } catch (ExecutionException e) { 614 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 615 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 616 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 617 } 618 } 619 620 @Test deleteFeaturestoreTest2()621 public void deleteFeaturestoreTest2() throws Exception { 622 Empty expectedResponse = Empty.newBuilder().build(); 623 Operation resultOperation = 624 Operation.newBuilder() 625 .setName("deleteFeaturestoreTest") 626 .setDone(true) 627 .setResponse(Any.pack(expectedResponse)) 628 .build(); 629 mockFeaturestoreService.addResponse(resultOperation); 630 631 String name = "name3373707"; 632 633 client.deleteFeaturestoreAsync(name).get(); 634 635 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 636 Assert.assertEquals(1, actualRequests.size()); 637 DeleteFeaturestoreRequest actualRequest = ((DeleteFeaturestoreRequest) actualRequests.get(0)); 638 639 Assert.assertEquals(name, actualRequest.getName()); 640 Assert.assertTrue( 641 channelProvider.isHeaderSent( 642 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 643 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 644 } 645 646 @Test deleteFeaturestoreExceptionTest2()647 public void deleteFeaturestoreExceptionTest2() throws Exception { 648 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 649 mockFeaturestoreService.addException(exception); 650 651 try { 652 String name = "name3373707"; 653 client.deleteFeaturestoreAsync(name).get(); 654 Assert.fail("No exception raised"); 655 } catch (ExecutionException e) { 656 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 657 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 658 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 659 } 660 } 661 662 @Test deleteFeaturestoreTest3()663 public void deleteFeaturestoreTest3() throws Exception { 664 Empty expectedResponse = Empty.newBuilder().build(); 665 Operation resultOperation = 666 Operation.newBuilder() 667 .setName("deleteFeaturestoreTest") 668 .setDone(true) 669 .setResponse(Any.pack(expectedResponse)) 670 .build(); 671 mockFeaturestoreService.addResponse(resultOperation); 672 673 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 674 boolean force = true; 675 676 client.deleteFeaturestoreAsync(name, force).get(); 677 678 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 679 Assert.assertEquals(1, actualRequests.size()); 680 DeleteFeaturestoreRequest actualRequest = ((DeleteFeaturestoreRequest) actualRequests.get(0)); 681 682 Assert.assertEquals(name.toString(), actualRequest.getName()); 683 Assert.assertEquals(force, actualRequest.getForce()); 684 Assert.assertTrue( 685 channelProvider.isHeaderSent( 686 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 687 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 688 } 689 690 @Test deleteFeaturestoreExceptionTest3()691 public void deleteFeaturestoreExceptionTest3() throws Exception { 692 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 693 mockFeaturestoreService.addException(exception); 694 695 try { 696 FeaturestoreName name = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 697 boolean force = true; 698 client.deleteFeaturestoreAsync(name, force).get(); 699 Assert.fail("No exception raised"); 700 } catch (ExecutionException e) { 701 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 702 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 703 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 704 } 705 } 706 707 @Test deleteFeaturestoreTest4()708 public void deleteFeaturestoreTest4() throws Exception { 709 Empty expectedResponse = Empty.newBuilder().build(); 710 Operation resultOperation = 711 Operation.newBuilder() 712 .setName("deleteFeaturestoreTest") 713 .setDone(true) 714 .setResponse(Any.pack(expectedResponse)) 715 .build(); 716 mockFeaturestoreService.addResponse(resultOperation); 717 718 String name = "name3373707"; 719 boolean force = true; 720 721 client.deleteFeaturestoreAsync(name, force).get(); 722 723 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 724 Assert.assertEquals(1, actualRequests.size()); 725 DeleteFeaturestoreRequest actualRequest = ((DeleteFeaturestoreRequest) actualRequests.get(0)); 726 727 Assert.assertEquals(name, actualRequest.getName()); 728 Assert.assertEquals(force, actualRequest.getForce()); 729 Assert.assertTrue( 730 channelProvider.isHeaderSent( 731 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 732 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 733 } 734 735 @Test deleteFeaturestoreExceptionTest4()736 public void deleteFeaturestoreExceptionTest4() throws Exception { 737 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 738 mockFeaturestoreService.addException(exception); 739 740 try { 741 String name = "name3373707"; 742 boolean force = true; 743 client.deleteFeaturestoreAsync(name, force).get(); 744 Assert.fail("No exception raised"); 745 } catch (ExecutionException e) { 746 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 747 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 748 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 749 } 750 } 751 752 @Test createEntityTypeTest()753 public void createEntityTypeTest() throws Exception { 754 EntityType expectedResponse = 755 EntityType.newBuilder() 756 .setName( 757 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 758 .toString()) 759 .setDescription("description-1724546052") 760 .setCreateTime(Timestamp.newBuilder().build()) 761 .setUpdateTime(Timestamp.newBuilder().build()) 762 .putAllLabels(new HashMap<String, String>()) 763 .setEtag("etag3123477") 764 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 765 .setOfflineStorageTtlDays(-844678422) 766 .build(); 767 Operation resultOperation = 768 Operation.newBuilder() 769 .setName("createEntityTypeTest") 770 .setDone(true) 771 .setResponse(Any.pack(expectedResponse)) 772 .build(); 773 mockFeaturestoreService.addResponse(resultOperation); 774 775 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 776 EntityType entityType = EntityType.newBuilder().build(); 777 778 EntityType actualResponse = client.createEntityTypeAsync(parent, entityType).get(); 779 Assert.assertEquals(expectedResponse, actualResponse); 780 781 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 782 Assert.assertEquals(1, actualRequests.size()); 783 CreateEntityTypeRequest actualRequest = ((CreateEntityTypeRequest) actualRequests.get(0)); 784 785 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 786 Assert.assertEquals(entityType, actualRequest.getEntityType()); 787 Assert.assertTrue( 788 channelProvider.isHeaderSent( 789 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 790 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 791 } 792 793 @Test createEntityTypeExceptionTest()794 public void createEntityTypeExceptionTest() throws Exception { 795 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 796 mockFeaturestoreService.addException(exception); 797 798 try { 799 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 800 EntityType entityType = EntityType.newBuilder().build(); 801 client.createEntityTypeAsync(parent, entityType).get(); 802 Assert.fail("No exception raised"); 803 } catch (ExecutionException e) { 804 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 805 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 806 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 807 } 808 } 809 810 @Test createEntityTypeTest2()811 public void createEntityTypeTest2() throws Exception { 812 EntityType expectedResponse = 813 EntityType.newBuilder() 814 .setName( 815 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 816 .toString()) 817 .setDescription("description-1724546052") 818 .setCreateTime(Timestamp.newBuilder().build()) 819 .setUpdateTime(Timestamp.newBuilder().build()) 820 .putAllLabels(new HashMap<String, String>()) 821 .setEtag("etag3123477") 822 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 823 .setOfflineStorageTtlDays(-844678422) 824 .build(); 825 Operation resultOperation = 826 Operation.newBuilder() 827 .setName("createEntityTypeTest") 828 .setDone(true) 829 .setResponse(Any.pack(expectedResponse)) 830 .build(); 831 mockFeaturestoreService.addResponse(resultOperation); 832 833 String parent = "parent-995424086"; 834 EntityType entityType = EntityType.newBuilder().build(); 835 836 EntityType actualResponse = client.createEntityTypeAsync(parent, entityType).get(); 837 Assert.assertEquals(expectedResponse, actualResponse); 838 839 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 840 Assert.assertEquals(1, actualRequests.size()); 841 CreateEntityTypeRequest actualRequest = ((CreateEntityTypeRequest) actualRequests.get(0)); 842 843 Assert.assertEquals(parent, actualRequest.getParent()); 844 Assert.assertEquals(entityType, actualRequest.getEntityType()); 845 Assert.assertTrue( 846 channelProvider.isHeaderSent( 847 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 848 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 849 } 850 851 @Test createEntityTypeExceptionTest2()852 public void createEntityTypeExceptionTest2() throws Exception { 853 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 854 mockFeaturestoreService.addException(exception); 855 856 try { 857 String parent = "parent-995424086"; 858 EntityType entityType = EntityType.newBuilder().build(); 859 client.createEntityTypeAsync(parent, entityType).get(); 860 Assert.fail("No exception raised"); 861 } catch (ExecutionException e) { 862 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 863 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 864 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 865 } 866 } 867 868 @Test createEntityTypeTest3()869 public void createEntityTypeTest3() throws Exception { 870 EntityType expectedResponse = 871 EntityType.newBuilder() 872 .setName( 873 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 874 .toString()) 875 .setDescription("description-1724546052") 876 .setCreateTime(Timestamp.newBuilder().build()) 877 .setUpdateTime(Timestamp.newBuilder().build()) 878 .putAllLabels(new HashMap<String, String>()) 879 .setEtag("etag3123477") 880 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 881 .setOfflineStorageTtlDays(-844678422) 882 .build(); 883 Operation resultOperation = 884 Operation.newBuilder() 885 .setName("createEntityTypeTest") 886 .setDone(true) 887 .setResponse(Any.pack(expectedResponse)) 888 .build(); 889 mockFeaturestoreService.addResponse(resultOperation); 890 891 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 892 EntityType entityType = EntityType.newBuilder().build(); 893 String entityTypeId = "entityTypeId767740856"; 894 895 EntityType actualResponse = 896 client.createEntityTypeAsync(parent, entityType, entityTypeId).get(); 897 Assert.assertEquals(expectedResponse, actualResponse); 898 899 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 900 Assert.assertEquals(1, actualRequests.size()); 901 CreateEntityTypeRequest actualRequest = ((CreateEntityTypeRequest) actualRequests.get(0)); 902 903 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 904 Assert.assertEquals(entityType, actualRequest.getEntityType()); 905 Assert.assertEquals(entityTypeId, actualRequest.getEntityTypeId()); 906 Assert.assertTrue( 907 channelProvider.isHeaderSent( 908 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 909 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 910 } 911 912 @Test createEntityTypeExceptionTest3()913 public void createEntityTypeExceptionTest3() throws Exception { 914 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 915 mockFeaturestoreService.addException(exception); 916 917 try { 918 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 919 EntityType entityType = EntityType.newBuilder().build(); 920 String entityTypeId = "entityTypeId767740856"; 921 client.createEntityTypeAsync(parent, entityType, entityTypeId).get(); 922 Assert.fail("No exception raised"); 923 } catch (ExecutionException e) { 924 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 925 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 926 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 927 } 928 } 929 930 @Test createEntityTypeTest4()931 public void createEntityTypeTest4() throws Exception { 932 EntityType expectedResponse = 933 EntityType.newBuilder() 934 .setName( 935 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 936 .toString()) 937 .setDescription("description-1724546052") 938 .setCreateTime(Timestamp.newBuilder().build()) 939 .setUpdateTime(Timestamp.newBuilder().build()) 940 .putAllLabels(new HashMap<String, String>()) 941 .setEtag("etag3123477") 942 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 943 .setOfflineStorageTtlDays(-844678422) 944 .build(); 945 Operation resultOperation = 946 Operation.newBuilder() 947 .setName("createEntityTypeTest") 948 .setDone(true) 949 .setResponse(Any.pack(expectedResponse)) 950 .build(); 951 mockFeaturestoreService.addResponse(resultOperation); 952 953 String parent = "parent-995424086"; 954 EntityType entityType = EntityType.newBuilder().build(); 955 String entityTypeId = "entityTypeId767740856"; 956 957 EntityType actualResponse = 958 client.createEntityTypeAsync(parent, entityType, entityTypeId).get(); 959 Assert.assertEquals(expectedResponse, actualResponse); 960 961 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 962 Assert.assertEquals(1, actualRequests.size()); 963 CreateEntityTypeRequest actualRequest = ((CreateEntityTypeRequest) actualRequests.get(0)); 964 965 Assert.assertEquals(parent, actualRequest.getParent()); 966 Assert.assertEquals(entityType, actualRequest.getEntityType()); 967 Assert.assertEquals(entityTypeId, actualRequest.getEntityTypeId()); 968 Assert.assertTrue( 969 channelProvider.isHeaderSent( 970 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 971 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 972 } 973 974 @Test createEntityTypeExceptionTest4()975 public void createEntityTypeExceptionTest4() throws Exception { 976 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 977 mockFeaturestoreService.addException(exception); 978 979 try { 980 String parent = "parent-995424086"; 981 EntityType entityType = EntityType.newBuilder().build(); 982 String entityTypeId = "entityTypeId767740856"; 983 client.createEntityTypeAsync(parent, entityType, entityTypeId).get(); 984 Assert.fail("No exception raised"); 985 } catch (ExecutionException e) { 986 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 987 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 988 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 989 } 990 } 991 992 @Test getEntityTypeTest()993 public void getEntityTypeTest() throws Exception { 994 EntityType expectedResponse = 995 EntityType.newBuilder() 996 .setName( 997 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 998 .toString()) 999 .setDescription("description-1724546052") 1000 .setCreateTime(Timestamp.newBuilder().build()) 1001 .setUpdateTime(Timestamp.newBuilder().build()) 1002 .putAllLabels(new HashMap<String, String>()) 1003 .setEtag("etag3123477") 1004 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1005 .setOfflineStorageTtlDays(-844678422) 1006 .build(); 1007 mockFeaturestoreService.addResponse(expectedResponse); 1008 1009 EntityTypeName name = 1010 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1011 1012 EntityType actualResponse = client.getEntityType(name); 1013 Assert.assertEquals(expectedResponse, actualResponse); 1014 1015 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1016 Assert.assertEquals(1, actualRequests.size()); 1017 GetEntityTypeRequest actualRequest = ((GetEntityTypeRequest) actualRequests.get(0)); 1018 1019 Assert.assertEquals(name.toString(), actualRequest.getName()); 1020 Assert.assertTrue( 1021 channelProvider.isHeaderSent( 1022 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1023 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1024 } 1025 1026 @Test getEntityTypeExceptionTest()1027 public void getEntityTypeExceptionTest() throws Exception { 1028 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1029 mockFeaturestoreService.addException(exception); 1030 1031 try { 1032 EntityTypeName name = 1033 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1034 client.getEntityType(name); 1035 Assert.fail("No exception raised"); 1036 } catch (InvalidArgumentException e) { 1037 // Expected exception. 1038 } 1039 } 1040 1041 @Test getEntityTypeTest2()1042 public void getEntityTypeTest2() throws Exception { 1043 EntityType expectedResponse = 1044 EntityType.newBuilder() 1045 .setName( 1046 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 1047 .toString()) 1048 .setDescription("description-1724546052") 1049 .setCreateTime(Timestamp.newBuilder().build()) 1050 .setUpdateTime(Timestamp.newBuilder().build()) 1051 .putAllLabels(new HashMap<String, String>()) 1052 .setEtag("etag3123477") 1053 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1054 .setOfflineStorageTtlDays(-844678422) 1055 .build(); 1056 mockFeaturestoreService.addResponse(expectedResponse); 1057 1058 String name = "name3373707"; 1059 1060 EntityType actualResponse = client.getEntityType(name); 1061 Assert.assertEquals(expectedResponse, actualResponse); 1062 1063 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1064 Assert.assertEquals(1, actualRequests.size()); 1065 GetEntityTypeRequest actualRequest = ((GetEntityTypeRequest) actualRequests.get(0)); 1066 1067 Assert.assertEquals(name, actualRequest.getName()); 1068 Assert.assertTrue( 1069 channelProvider.isHeaderSent( 1070 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1071 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1072 } 1073 1074 @Test getEntityTypeExceptionTest2()1075 public void getEntityTypeExceptionTest2() throws Exception { 1076 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1077 mockFeaturestoreService.addException(exception); 1078 1079 try { 1080 String name = "name3373707"; 1081 client.getEntityType(name); 1082 Assert.fail("No exception raised"); 1083 } catch (InvalidArgumentException e) { 1084 // Expected exception. 1085 } 1086 } 1087 1088 @Test listEntityTypesTest()1089 public void listEntityTypesTest() throws Exception { 1090 EntityType responsesElement = EntityType.newBuilder().build(); 1091 ListEntityTypesResponse expectedResponse = 1092 ListEntityTypesResponse.newBuilder() 1093 .setNextPageToken("") 1094 .addAllEntityTypes(Arrays.asList(responsesElement)) 1095 .build(); 1096 mockFeaturestoreService.addResponse(expectedResponse); 1097 1098 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 1099 1100 ListEntityTypesPagedResponse pagedListResponse = client.listEntityTypes(parent); 1101 1102 List<EntityType> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1103 1104 Assert.assertEquals(1, resources.size()); 1105 Assert.assertEquals(expectedResponse.getEntityTypesList().get(0), resources.get(0)); 1106 1107 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1108 Assert.assertEquals(1, actualRequests.size()); 1109 ListEntityTypesRequest actualRequest = ((ListEntityTypesRequest) actualRequests.get(0)); 1110 1111 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1112 Assert.assertTrue( 1113 channelProvider.isHeaderSent( 1114 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1115 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1116 } 1117 1118 @Test listEntityTypesExceptionTest()1119 public void listEntityTypesExceptionTest() throws Exception { 1120 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1121 mockFeaturestoreService.addException(exception); 1122 1123 try { 1124 FeaturestoreName parent = FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 1125 client.listEntityTypes(parent); 1126 Assert.fail("No exception raised"); 1127 } catch (InvalidArgumentException e) { 1128 // Expected exception. 1129 } 1130 } 1131 1132 @Test listEntityTypesTest2()1133 public void listEntityTypesTest2() throws Exception { 1134 EntityType responsesElement = EntityType.newBuilder().build(); 1135 ListEntityTypesResponse expectedResponse = 1136 ListEntityTypesResponse.newBuilder() 1137 .setNextPageToken("") 1138 .addAllEntityTypes(Arrays.asList(responsesElement)) 1139 .build(); 1140 mockFeaturestoreService.addResponse(expectedResponse); 1141 1142 String parent = "parent-995424086"; 1143 1144 ListEntityTypesPagedResponse pagedListResponse = client.listEntityTypes(parent); 1145 1146 List<EntityType> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1147 1148 Assert.assertEquals(1, resources.size()); 1149 Assert.assertEquals(expectedResponse.getEntityTypesList().get(0), resources.get(0)); 1150 1151 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1152 Assert.assertEquals(1, actualRequests.size()); 1153 ListEntityTypesRequest actualRequest = ((ListEntityTypesRequest) actualRequests.get(0)); 1154 1155 Assert.assertEquals(parent, actualRequest.getParent()); 1156 Assert.assertTrue( 1157 channelProvider.isHeaderSent( 1158 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1159 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1160 } 1161 1162 @Test listEntityTypesExceptionTest2()1163 public void listEntityTypesExceptionTest2() throws Exception { 1164 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1165 mockFeaturestoreService.addException(exception); 1166 1167 try { 1168 String parent = "parent-995424086"; 1169 client.listEntityTypes(parent); 1170 Assert.fail("No exception raised"); 1171 } catch (InvalidArgumentException e) { 1172 // Expected exception. 1173 } 1174 } 1175 1176 @Test updateEntityTypeTest()1177 public void updateEntityTypeTest() throws Exception { 1178 EntityType expectedResponse = 1179 EntityType.newBuilder() 1180 .setName( 1181 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]") 1182 .toString()) 1183 .setDescription("description-1724546052") 1184 .setCreateTime(Timestamp.newBuilder().build()) 1185 .setUpdateTime(Timestamp.newBuilder().build()) 1186 .putAllLabels(new HashMap<String, String>()) 1187 .setEtag("etag3123477") 1188 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1189 .setOfflineStorageTtlDays(-844678422) 1190 .build(); 1191 mockFeaturestoreService.addResponse(expectedResponse); 1192 1193 EntityType entityType = EntityType.newBuilder().build(); 1194 FieldMask updateMask = FieldMask.newBuilder().build(); 1195 1196 EntityType actualResponse = client.updateEntityType(entityType, updateMask); 1197 Assert.assertEquals(expectedResponse, actualResponse); 1198 1199 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1200 Assert.assertEquals(1, actualRequests.size()); 1201 UpdateEntityTypeRequest actualRequest = ((UpdateEntityTypeRequest) actualRequests.get(0)); 1202 1203 Assert.assertEquals(entityType, actualRequest.getEntityType()); 1204 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 1205 Assert.assertTrue( 1206 channelProvider.isHeaderSent( 1207 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1208 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1209 } 1210 1211 @Test updateEntityTypeExceptionTest()1212 public void updateEntityTypeExceptionTest() throws Exception { 1213 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1214 mockFeaturestoreService.addException(exception); 1215 1216 try { 1217 EntityType entityType = EntityType.newBuilder().build(); 1218 FieldMask updateMask = FieldMask.newBuilder().build(); 1219 client.updateEntityType(entityType, updateMask); 1220 Assert.fail("No exception raised"); 1221 } catch (InvalidArgumentException e) { 1222 // Expected exception. 1223 } 1224 } 1225 1226 @Test deleteEntityTypeTest()1227 public void deleteEntityTypeTest() throws Exception { 1228 Empty expectedResponse = Empty.newBuilder().build(); 1229 Operation resultOperation = 1230 Operation.newBuilder() 1231 .setName("deleteEntityTypeTest") 1232 .setDone(true) 1233 .setResponse(Any.pack(expectedResponse)) 1234 .build(); 1235 mockFeaturestoreService.addResponse(resultOperation); 1236 1237 EntityTypeName name = 1238 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1239 1240 client.deleteEntityTypeAsync(name).get(); 1241 1242 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1243 Assert.assertEquals(1, actualRequests.size()); 1244 DeleteEntityTypeRequest actualRequest = ((DeleteEntityTypeRequest) actualRequests.get(0)); 1245 1246 Assert.assertEquals(name.toString(), actualRequest.getName()); 1247 Assert.assertTrue( 1248 channelProvider.isHeaderSent( 1249 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1250 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1251 } 1252 1253 @Test deleteEntityTypeExceptionTest()1254 public void deleteEntityTypeExceptionTest() throws Exception { 1255 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1256 mockFeaturestoreService.addException(exception); 1257 1258 try { 1259 EntityTypeName name = 1260 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1261 client.deleteEntityTypeAsync(name).get(); 1262 Assert.fail("No exception raised"); 1263 } catch (ExecutionException e) { 1264 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1265 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1266 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1267 } 1268 } 1269 1270 @Test deleteEntityTypeTest2()1271 public void deleteEntityTypeTest2() throws Exception { 1272 Empty expectedResponse = Empty.newBuilder().build(); 1273 Operation resultOperation = 1274 Operation.newBuilder() 1275 .setName("deleteEntityTypeTest") 1276 .setDone(true) 1277 .setResponse(Any.pack(expectedResponse)) 1278 .build(); 1279 mockFeaturestoreService.addResponse(resultOperation); 1280 1281 String name = "name3373707"; 1282 1283 client.deleteEntityTypeAsync(name).get(); 1284 1285 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1286 Assert.assertEquals(1, actualRequests.size()); 1287 DeleteEntityTypeRequest actualRequest = ((DeleteEntityTypeRequest) actualRequests.get(0)); 1288 1289 Assert.assertEquals(name, actualRequest.getName()); 1290 Assert.assertTrue( 1291 channelProvider.isHeaderSent( 1292 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1293 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1294 } 1295 1296 @Test deleteEntityTypeExceptionTest2()1297 public void deleteEntityTypeExceptionTest2() throws Exception { 1298 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1299 mockFeaturestoreService.addException(exception); 1300 1301 try { 1302 String name = "name3373707"; 1303 client.deleteEntityTypeAsync(name).get(); 1304 Assert.fail("No exception raised"); 1305 } catch (ExecutionException e) { 1306 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1307 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1308 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1309 } 1310 } 1311 1312 @Test deleteEntityTypeTest3()1313 public void deleteEntityTypeTest3() throws Exception { 1314 Empty expectedResponse = Empty.newBuilder().build(); 1315 Operation resultOperation = 1316 Operation.newBuilder() 1317 .setName("deleteEntityTypeTest") 1318 .setDone(true) 1319 .setResponse(Any.pack(expectedResponse)) 1320 .build(); 1321 mockFeaturestoreService.addResponse(resultOperation); 1322 1323 EntityTypeName name = 1324 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1325 boolean force = true; 1326 1327 client.deleteEntityTypeAsync(name, force).get(); 1328 1329 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1330 Assert.assertEquals(1, actualRequests.size()); 1331 DeleteEntityTypeRequest actualRequest = ((DeleteEntityTypeRequest) actualRequests.get(0)); 1332 1333 Assert.assertEquals(name.toString(), actualRequest.getName()); 1334 Assert.assertEquals(force, actualRequest.getForce()); 1335 Assert.assertTrue( 1336 channelProvider.isHeaderSent( 1337 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1338 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1339 } 1340 1341 @Test deleteEntityTypeExceptionTest3()1342 public void deleteEntityTypeExceptionTest3() throws Exception { 1343 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1344 mockFeaturestoreService.addException(exception); 1345 1346 try { 1347 EntityTypeName name = 1348 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1349 boolean force = true; 1350 client.deleteEntityTypeAsync(name, force).get(); 1351 Assert.fail("No exception raised"); 1352 } catch (ExecutionException e) { 1353 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1354 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1355 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1356 } 1357 } 1358 1359 @Test deleteEntityTypeTest4()1360 public void deleteEntityTypeTest4() throws Exception { 1361 Empty expectedResponse = Empty.newBuilder().build(); 1362 Operation resultOperation = 1363 Operation.newBuilder() 1364 .setName("deleteEntityTypeTest") 1365 .setDone(true) 1366 .setResponse(Any.pack(expectedResponse)) 1367 .build(); 1368 mockFeaturestoreService.addResponse(resultOperation); 1369 1370 String name = "name3373707"; 1371 boolean force = true; 1372 1373 client.deleteEntityTypeAsync(name, force).get(); 1374 1375 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1376 Assert.assertEquals(1, actualRequests.size()); 1377 DeleteEntityTypeRequest actualRequest = ((DeleteEntityTypeRequest) actualRequests.get(0)); 1378 1379 Assert.assertEquals(name, actualRequest.getName()); 1380 Assert.assertEquals(force, actualRequest.getForce()); 1381 Assert.assertTrue( 1382 channelProvider.isHeaderSent( 1383 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1384 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1385 } 1386 1387 @Test deleteEntityTypeExceptionTest4()1388 public void deleteEntityTypeExceptionTest4() throws Exception { 1389 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1390 mockFeaturestoreService.addException(exception); 1391 1392 try { 1393 String name = "name3373707"; 1394 boolean force = true; 1395 client.deleteEntityTypeAsync(name, force).get(); 1396 Assert.fail("No exception raised"); 1397 } catch (ExecutionException e) { 1398 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1399 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1400 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1401 } 1402 } 1403 1404 @Test createFeatureTest()1405 public void createFeatureTest() throws Exception { 1406 Feature expectedResponse = 1407 Feature.newBuilder() 1408 .setName( 1409 FeatureName.of( 1410 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1411 .toString()) 1412 .setDescription("description-1724546052") 1413 .setCreateTime(Timestamp.newBuilder().build()) 1414 .setUpdateTime(Timestamp.newBuilder().build()) 1415 .putAllLabels(new HashMap<String, String>()) 1416 .setEtag("etag3123477") 1417 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1418 .setDisableMonitoring(true) 1419 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1420 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1421 .build(); 1422 Operation resultOperation = 1423 Operation.newBuilder() 1424 .setName("createFeatureTest") 1425 .setDone(true) 1426 .setResponse(Any.pack(expectedResponse)) 1427 .build(); 1428 mockFeaturestoreService.addResponse(resultOperation); 1429 1430 EntityTypeName parent = 1431 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1432 Feature feature = Feature.newBuilder().build(); 1433 1434 Feature actualResponse = client.createFeatureAsync(parent, feature).get(); 1435 Assert.assertEquals(expectedResponse, actualResponse); 1436 1437 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1438 Assert.assertEquals(1, actualRequests.size()); 1439 CreateFeatureRequest actualRequest = ((CreateFeatureRequest) actualRequests.get(0)); 1440 1441 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1442 Assert.assertEquals(feature, actualRequest.getFeature()); 1443 Assert.assertTrue( 1444 channelProvider.isHeaderSent( 1445 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1446 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1447 } 1448 1449 @Test createFeatureExceptionTest()1450 public void createFeatureExceptionTest() throws Exception { 1451 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1452 mockFeaturestoreService.addException(exception); 1453 1454 try { 1455 EntityTypeName parent = 1456 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1457 Feature feature = Feature.newBuilder().build(); 1458 client.createFeatureAsync(parent, feature).get(); 1459 Assert.fail("No exception raised"); 1460 } catch (ExecutionException e) { 1461 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1462 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1463 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1464 } 1465 } 1466 1467 @Test createFeatureTest2()1468 public void createFeatureTest2() throws Exception { 1469 Feature expectedResponse = 1470 Feature.newBuilder() 1471 .setName( 1472 FeatureName.of( 1473 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1474 .toString()) 1475 .setDescription("description-1724546052") 1476 .setCreateTime(Timestamp.newBuilder().build()) 1477 .setUpdateTime(Timestamp.newBuilder().build()) 1478 .putAllLabels(new HashMap<String, String>()) 1479 .setEtag("etag3123477") 1480 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1481 .setDisableMonitoring(true) 1482 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1483 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1484 .build(); 1485 Operation resultOperation = 1486 Operation.newBuilder() 1487 .setName("createFeatureTest") 1488 .setDone(true) 1489 .setResponse(Any.pack(expectedResponse)) 1490 .build(); 1491 mockFeaturestoreService.addResponse(resultOperation); 1492 1493 String parent = "parent-995424086"; 1494 Feature feature = Feature.newBuilder().build(); 1495 1496 Feature actualResponse = client.createFeatureAsync(parent, feature).get(); 1497 Assert.assertEquals(expectedResponse, actualResponse); 1498 1499 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1500 Assert.assertEquals(1, actualRequests.size()); 1501 CreateFeatureRequest actualRequest = ((CreateFeatureRequest) actualRequests.get(0)); 1502 1503 Assert.assertEquals(parent, actualRequest.getParent()); 1504 Assert.assertEquals(feature, actualRequest.getFeature()); 1505 Assert.assertTrue( 1506 channelProvider.isHeaderSent( 1507 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1508 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1509 } 1510 1511 @Test createFeatureExceptionTest2()1512 public void createFeatureExceptionTest2() throws Exception { 1513 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1514 mockFeaturestoreService.addException(exception); 1515 1516 try { 1517 String parent = "parent-995424086"; 1518 Feature feature = Feature.newBuilder().build(); 1519 client.createFeatureAsync(parent, feature).get(); 1520 Assert.fail("No exception raised"); 1521 } catch (ExecutionException e) { 1522 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1523 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1524 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1525 } 1526 } 1527 1528 @Test createFeatureTest3()1529 public void createFeatureTest3() throws Exception { 1530 Feature expectedResponse = 1531 Feature.newBuilder() 1532 .setName( 1533 FeatureName.of( 1534 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1535 .toString()) 1536 .setDescription("description-1724546052") 1537 .setCreateTime(Timestamp.newBuilder().build()) 1538 .setUpdateTime(Timestamp.newBuilder().build()) 1539 .putAllLabels(new HashMap<String, String>()) 1540 .setEtag("etag3123477") 1541 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1542 .setDisableMonitoring(true) 1543 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1544 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1545 .build(); 1546 Operation resultOperation = 1547 Operation.newBuilder() 1548 .setName("createFeatureTest") 1549 .setDone(true) 1550 .setResponse(Any.pack(expectedResponse)) 1551 .build(); 1552 mockFeaturestoreService.addResponse(resultOperation); 1553 1554 EntityTypeName parent = 1555 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1556 Feature feature = Feature.newBuilder().build(); 1557 String featureId = "featureId-420503887"; 1558 1559 Feature actualResponse = client.createFeatureAsync(parent, feature, featureId).get(); 1560 Assert.assertEquals(expectedResponse, actualResponse); 1561 1562 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1563 Assert.assertEquals(1, actualRequests.size()); 1564 CreateFeatureRequest actualRequest = ((CreateFeatureRequest) actualRequests.get(0)); 1565 1566 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1567 Assert.assertEquals(feature, actualRequest.getFeature()); 1568 Assert.assertEquals(featureId, actualRequest.getFeatureId()); 1569 Assert.assertTrue( 1570 channelProvider.isHeaderSent( 1571 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1572 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1573 } 1574 1575 @Test createFeatureExceptionTest3()1576 public void createFeatureExceptionTest3() throws Exception { 1577 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1578 mockFeaturestoreService.addException(exception); 1579 1580 try { 1581 EntityTypeName parent = 1582 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1583 Feature feature = Feature.newBuilder().build(); 1584 String featureId = "featureId-420503887"; 1585 client.createFeatureAsync(parent, feature, featureId).get(); 1586 Assert.fail("No exception raised"); 1587 } catch (ExecutionException e) { 1588 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1589 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1590 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1591 } 1592 } 1593 1594 @Test createFeatureTest4()1595 public void createFeatureTest4() throws Exception { 1596 Feature expectedResponse = 1597 Feature.newBuilder() 1598 .setName( 1599 FeatureName.of( 1600 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1601 .toString()) 1602 .setDescription("description-1724546052") 1603 .setCreateTime(Timestamp.newBuilder().build()) 1604 .setUpdateTime(Timestamp.newBuilder().build()) 1605 .putAllLabels(new HashMap<String, String>()) 1606 .setEtag("etag3123477") 1607 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1608 .setDisableMonitoring(true) 1609 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1610 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1611 .build(); 1612 Operation resultOperation = 1613 Operation.newBuilder() 1614 .setName("createFeatureTest") 1615 .setDone(true) 1616 .setResponse(Any.pack(expectedResponse)) 1617 .build(); 1618 mockFeaturestoreService.addResponse(resultOperation); 1619 1620 String parent = "parent-995424086"; 1621 Feature feature = Feature.newBuilder().build(); 1622 String featureId = "featureId-420503887"; 1623 1624 Feature actualResponse = client.createFeatureAsync(parent, feature, featureId).get(); 1625 Assert.assertEquals(expectedResponse, actualResponse); 1626 1627 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1628 Assert.assertEquals(1, actualRequests.size()); 1629 CreateFeatureRequest actualRequest = ((CreateFeatureRequest) actualRequests.get(0)); 1630 1631 Assert.assertEquals(parent, actualRequest.getParent()); 1632 Assert.assertEquals(feature, actualRequest.getFeature()); 1633 Assert.assertEquals(featureId, actualRequest.getFeatureId()); 1634 Assert.assertTrue( 1635 channelProvider.isHeaderSent( 1636 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1637 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1638 } 1639 1640 @Test createFeatureExceptionTest4()1641 public void createFeatureExceptionTest4() throws Exception { 1642 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1643 mockFeaturestoreService.addException(exception); 1644 1645 try { 1646 String parent = "parent-995424086"; 1647 Feature feature = Feature.newBuilder().build(); 1648 String featureId = "featureId-420503887"; 1649 client.createFeatureAsync(parent, feature, featureId).get(); 1650 Assert.fail("No exception raised"); 1651 } catch (ExecutionException e) { 1652 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1653 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1654 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1655 } 1656 } 1657 1658 @Test batchCreateFeaturesTest()1659 public void batchCreateFeaturesTest() throws Exception { 1660 BatchCreateFeaturesResponse expectedResponse = 1661 BatchCreateFeaturesResponse.newBuilder().addAllFeatures(new ArrayList<Feature>()).build(); 1662 Operation resultOperation = 1663 Operation.newBuilder() 1664 .setName("batchCreateFeaturesTest") 1665 .setDone(true) 1666 .setResponse(Any.pack(expectedResponse)) 1667 .build(); 1668 mockFeaturestoreService.addResponse(resultOperation); 1669 1670 EntityTypeName parent = 1671 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1672 List<CreateFeatureRequest> requests = new ArrayList<>(); 1673 1674 BatchCreateFeaturesResponse actualResponse = 1675 client.batchCreateFeaturesAsync(parent, requests).get(); 1676 Assert.assertEquals(expectedResponse, actualResponse); 1677 1678 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1679 Assert.assertEquals(1, actualRequests.size()); 1680 BatchCreateFeaturesRequest actualRequest = ((BatchCreateFeaturesRequest) actualRequests.get(0)); 1681 1682 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1683 Assert.assertEquals(requests, actualRequest.getRequestsList()); 1684 Assert.assertTrue( 1685 channelProvider.isHeaderSent( 1686 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1687 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1688 } 1689 1690 @Test batchCreateFeaturesExceptionTest()1691 public void batchCreateFeaturesExceptionTest() throws Exception { 1692 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1693 mockFeaturestoreService.addException(exception); 1694 1695 try { 1696 EntityTypeName parent = 1697 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1698 List<CreateFeatureRequest> requests = new ArrayList<>(); 1699 client.batchCreateFeaturesAsync(parent, requests).get(); 1700 Assert.fail("No exception raised"); 1701 } catch (ExecutionException e) { 1702 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1703 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1704 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1705 } 1706 } 1707 1708 @Test batchCreateFeaturesTest2()1709 public void batchCreateFeaturesTest2() throws Exception { 1710 BatchCreateFeaturesResponse expectedResponse = 1711 BatchCreateFeaturesResponse.newBuilder().addAllFeatures(new ArrayList<Feature>()).build(); 1712 Operation resultOperation = 1713 Operation.newBuilder() 1714 .setName("batchCreateFeaturesTest") 1715 .setDone(true) 1716 .setResponse(Any.pack(expectedResponse)) 1717 .build(); 1718 mockFeaturestoreService.addResponse(resultOperation); 1719 1720 String parent = "parent-995424086"; 1721 List<CreateFeatureRequest> requests = new ArrayList<>(); 1722 1723 BatchCreateFeaturesResponse actualResponse = 1724 client.batchCreateFeaturesAsync(parent, requests).get(); 1725 Assert.assertEquals(expectedResponse, actualResponse); 1726 1727 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1728 Assert.assertEquals(1, actualRequests.size()); 1729 BatchCreateFeaturesRequest actualRequest = ((BatchCreateFeaturesRequest) actualRequests.get(0)); 1730 1731 Assert.assertEquals(parent, actualRequest.getParent()); 1732 Assert.assertEquals(requests, actualRequest.getRequestsList()); 1733 Assert.assertTrue( 1734 channelProvider.isHeaderSent( 1735 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1736 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1737 } 1738 1739 @Test batchCreateFeaturesExceptionTest2()1740 public void batchCreateFeaturesExceptionTest2() throws Exception { 1741 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1742 mockFeaturestoreService.addException(exception); 1743 1744 try { 1745 String parent = "parent-995424086"; 1746 List<CreateFeatureRequest> requests = new ArrayList<>(); 1747 client.batchCreateFeaturesAsync(parent, requests).get(); 1748 Assert.fail("No exception raised"); 1749 } catch (ExecutionException e) { 1750 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 1751 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 1752 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 1753 } 1754 } 1755 1756 @Test getFeatureTest()1757 public void getFeatureTest() throws Exception { 1758 Feature expectedResponse = 1759 Feature.newBuilder() 1760 .setName( 1761 FeatureName.of( 1762 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1763 .toString()) 1764 .setDescription("description-1724546052") 1765 .setCreateTime(Timestamp.newBuilder().build()) 1766 .setUpdateTime(Timestamp.newBuilder().build()) 1767 .putAllLabels(new HashMap<String, String>()) 1768 .setEtag("etag3123477") 1769 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1770 .setDisableMonitoring(true) 1771 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1772 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1773 .build(); 1774 mockFeaturestoreService.addResponse(expectedResponse); 1775 1776 FeatureName name = 1777 FeatureName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]"); 1778 1779 Feature actualResponse = client.getFeature(name); 1780 Assert.assertEquals(expectedResponse, actualResponse); 1781 1782 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1783 Assert.assertEquals(1, actualRequests.size()); 1784 GetFeatureRequest actualRequest = ((GetFeatureRequest) actualRequests.get(0)); 1785 1786 Assert.assertEquals(name.toString(), actualRequest.getName()); 1787 Assert.assertTrue( 1788 channelProvider.isHeaderSent( 1789 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1790 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1791 } 1792 1793 @Test getFeatureExceptionTest()1794 public void getFeatureExceptionTest() throws Exception { 1795 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1796 mockFeaturestoreService.addException(exception); 1797 1798 try { 1799 FeatureName name = 1800 FeatureName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]"); 1801 client.getFeature(name); 1802 Assert.fail("No exception raised"); 1803 } catch (InvalidArgumentException e) { 1804 // Expected exception. 1805 } 1806 } 1807 1808 @Test getFeatureTest2()1809 public void getFeatureTest2() throws Exception { 1810 Feature expectedResponse = 1811 Feature.newBuilder() 1812 .setName( 1813 FeatureName.of( 1814 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1815 .toString()) 1816 .setDescription("description-1724546052") 1817 .setCreateTime(Timestamp.newBuilder().build()) 1818 .setUpdateTime(Timestamp.newBuilder().build()) 1819 .putAllLabels(new HashMap<String, String>()) 1820 .setEtag("etag3123477") 1821 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1822 .setDisableMonitoring(true) 1823 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1824 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1825 .build(); 1826 mockFeaturestoreService.addResponse(expectedResponse); 1827 1828 String name = "name3373707"; 1829 1830 Feature actualResponse = client.getFeature(name); 1831 Assert.assertEquals(expectedResponse, actualResponse); 1832 1833 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1834 Assert.assertEquals(1, actualRequests.size()); 1835 GetFeatureRequest actualRequest = ((GetFeatureRequest) actualRequests.get(0)); 1836 1837 Assert.assertEquals(name, actualRequest.getName()); 1838 Assert.assertTrue( 1839 channelProvider.isHeaderSent( 1840 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1841 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1842 } 1843 1844 @Test getFeatureExceptionTest2()1845 public void getFeatureExceptionTest2() throws Exception { 1846 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1847 mockFeaturestoreService.addException(exception); 1848 1849 try { 1850 String name = "name3373707"; 1851 client.getFeature(name); 1852 Assert.fail("No exception raised"); 1853 } catch (InvalidArgumentException e) { 1854 // Expected exception. 1855 } 1856 } 1857 1858 @Test listFeaturesTest()1859 public void listFeaturesTest() throws Exception { 1860 Feature responsesElement = Feature.newBuilder().build(); 1861 ListFeaturesResponse expectedResponse = 1862 ListFeaturesResponse.newBuilder() 1863 .setNextPageToken("") 1864 .addAllFeatures(Arrays.asList(responsesElement)) 1865 .build(); 1866 mockFeaturestoreService.addResponse(expectedResponse); 1867 1868 EntityTypeName parent = 1869 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1870 1871 ListFeaturesPagedResponse pagedListResponse = client.listFeatures(parent); 1872 1873 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1874 1875 Assert.assertEquals(1, resources.size()); 1876 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 1877 1878 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1879 Assert.assertEquals(1, actualRequests.size()); 1880 ListFeaturesRequest actualRequest = ((ListFeaturesRequest) actualRequests.get(0)); 1881 1882 Assert.assertEquals(parent.toString(), actualRequest.getParent()); 1883 Assert.assertTrue( 1884 channelProvider.isHeaderSent( 1885 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1886 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1887 } 1888 1889 @Test listFeaturesExceptionTest()1890 public void listFeaturesExceptionTest() throws Exception { 1891 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1892 mockFeaturestoreService.addException(exception); 1893 1894 try { 1895 EntityTypeName parent = 1896 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 1897 client.listFeatures(parent); 1898 Assert.fail("No exception raised"); 1899 } catch (InvalidArgumentException e) { 1900 // Expected exception. 1901 } 1902 } 1903 1904 @Test listFeaturesTest2()1905 public void listFeaturesTest2() throws Exception { 1906 Feature responsesElement = Feature.newBuilder().build(); 1907 ListFeaturesResponse expectedResponse = 1908 ListFeaturesResponse.newBuilder() 1909 .setNextPageToken("") 1910 .addAllFeatures(Arrays.asList(responsesElement)) 1911 .build(); 1912 mockFeaturestoreService.addResponse(expectedResponse); 1913 1914 String parent = "parent-995424086"; 1915 1916 ListFeaturesPagedResponse pagedListResponse = client.listFeatures(parent); 1917 1918 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 1919 1920 Assert.assertEquals(1, resources.size()); 1921 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 1922 1923 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1924 Assert.assertEquals(1, actualRequests.size()); 1925 ListFeaturesRequest actualRequest = ((ListFeaturesRequest) actualRequests.get(0)); 1926 1927 Assert.assertEquals(parent, actualRequest.getParent()); 1928 Assert.assertTrue( 1929 channelProvider.isHeaderSent( 1930 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1931 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1932 } 1933 1934 @Test listFeaturesExceptionTest2()1935 public void listFeaturesExceptionTest2() throws Exception { 1936 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1937 mockFeaturestoreService.addException(exception); 1938 1939 try { 1940 String parent = "parent-995424086"; 1941 client.listFeatures(parent); 1942 Assert.fail("No exception raised"); 1943 } catch (InvalidArgumentException e) { 1944 // Expected exception. 1945 } 1946 } 1947 1948 @Test updateFeatureTest()1949 public void updateFeatureTest() throws Exception { 1950 Feature expectedResponse = 1951 Feature.newBuilder() 1952 .setName( 1953 FeatureName.of( 1954 "[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]") 1955 .toString()) 1956 .setDescription("description-1724546052") 1957 .setCreateTime(Timestamp.newBuilder().build()) 1958 .setUpdateTime(Timestamp.newBuilder().build()) 1959 .putAllLabels(new HashMap<String, String>()) 1960 .setEtag("etag3123477") 1961 .setMonitoringConfig(FeaturestoreMonitoringConfig.newBuilder().build()) 1962 .setDisableMonitoring(true) 1963 .addAllMonitoringStats(new ArrayList<FeatureStatsAnomaly>()) 1964 .addAllMonitoringStatsAnomalies(new ArrayList<Feature.MonitoringStatsAnomaly>()) 1965 .build(); 1966 mockFeaturestoreService.addResponse(expectedResponse); 1967 1968 Feature feature = Feature.newBuilder().build(); 1969 FieldMask updateMask = FieldMask.newBuilder().build(); 1970 1971 Feature actualResponse = client.updateFeature(feature, updateMask); 1972 Assert.assertEquals(expectedResponse, actualResponse); 1973 1974 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 1975 Assert.assertEquals(1, actualRequests.size()); 1976 UpdateFeatureRequest actualRequest = ((UpdateFeatureRequest) actualRequests.get(0)); 1977 1978 Assert.assertEquals(feature, actualRequest.getFeature()); 1979 Assert.assertEquals(updateMask, actualRequest.getUpdateMask()); 1980 Assert.assertTrue( 1981 channelProvider.isHeaderSent( 1982 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 1983 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 1984 } 1985 1986 @Test updateFeatureExceptionTest()1987 public void updateFeatureExceptionTest() throws Exception { 1988 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 1989 mockFeaturestoreService.addException(exception); 1990 1991 try { 1992 Feature feature = Feature.newBuilder().build(); 1993 FieldMask updateMask = FieldMask.newBuilder().build(); 1994 client.updateFeature(feature, updateMask); 1995 Assert.fail("No exception raised"); 1996 } catch (InvalidArgumentException e) { 1997 // Expected exception. 1998 } 1999 } 2000 2001 @Test deleteFeatureTest()2002 public void deleteFeatureTest() throws Exception { 2003 Empty expectedResponse = Empty.newBuilder().build(); 2004 Operation resultOperation = 2005 Operation.newBuilder() 2006 .setName("deleteFeatureTest") 2007 .setDone(true) 2008 .setResponse(Any.pack(expectedResponse)) 2009 .build(); 2010 mockFeaturestoreService.addResponse(resultOperation); 2011 2012 FeatureName name = 2013 FeatureName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]"); 2014 2015 client.deleteFeatureAsync(name).get(); 2016 2017 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2018 Assert.assertEquals(1, actualRequests.size()); 2019 DeleteFeatureRequest actualRequest = ((DeleteFeatureRequest) actualRequests.get(0)); 2020 2021 Assert.assertEquals(name.toString(), actualRequest.getName()); 2022 Assert.assertTrue( 2023 channelProvider.isHeaderSent( 2024 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2025 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2026 } 2027 2028 @Test deleteFeatureExceptionTest()2029 public void deleteFeatureExceptionTest() throws Exception { 2030 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2031 mockFeaturestoreService.addException(exception); 2032 2033 try { 2034 FeatureName name = 2035 FeatureName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]", "[FEATURE]"); 2036 client.deleteFeatureAsync(name).get(); 2037 Assert.fail("No exception raised"); 2038 } catch (ExecutionException e) { 2039 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2040 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2041 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2042 } 2043 } 2044 2045 @Test deleteFeatureTest2()2046 public void deleteFeatureTest2() throws Exception { 2047 Empty expectedResponse = Empty.newBuilder().build(); 2048 Operation resultOperation = 2049 Operation.newBuilder() 2050 .setName("deleteFeatureTest") 2051 .setDone(true) 2052 .setResponse(Any.pack(expectedResponse)) 2053 .build(); 2054 mockFeaturestoreService.addResponse(resultOperation); 2055 2056 String name = "name3373707"; 2057 2058 client.deleteFeatureAsync(name).get(); 2059 2060 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2061 Assert.assertEquals(1, actualRequests.size()); 2062 DeleteFeatureRequest actualRequest = ((DeleteFeatureRequest) actualRequests.get(0)); 2063 2064 Assert.assertEquals(name, actualRequest.getName()); 2065 Assert.assertTrue( 2066 channelProvider.isHeaderSent( 2067 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2068 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2069 } 2070 2071 @Test deleteFeatureExceptionTest2()2072 public void deleteFeatureExceptionTest2() throws Exception { 2073 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2074 mockFeaturestoreService.addException(exception); 2075 2076 try { 2077 String name = "name3373707"; 2078 client.deleteFeatureAsync(name).get(); 2079 Assert.fail("No exception raised"); 2080 } catch (ExecutionException e) { 2081 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2082 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2083 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2084 } 2085 } 2086 2087 @Test importFeatureValuesTest()2088 public void importFeatureValuesTest() throws Exception { 2089 ImportFeatureValuesResponse expectedResponse = 2090 ImportFeatureValuesResponse.newBuilder() 2091 .setImportedEntityCount(-1840044274) 2092 .setImportedFeatureValueCount(-1221471427) 2093 .setInvalidRowCount(-366655966) 2094 .setTimestampOutsideRetentionRowsCount(-43092019) 2095 .build(); 2096 Operation resultOperation = 2097 Operation.newBuilder() 2098 .setName("importFeatureValuesTest") 2099 .setDone(true) 2100 .setResponse(Any.pack(expectedResponse)) 2101 .build(); 2102 mockFeaturestoreService.addResponse(resultOperation); 2103 2104 EntityTypeName entityType = 2105 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2106 2107 ImportFeatureValuesResponse actualResponse = client.importFeatureValuesAsync(entityType).get(); 2108 Assert.assertEquals(expectedResponse, actualResponse); 2109 2110 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2111 Assert.assertEquals(1, actualRequests.size()); 2112 ImportFeatureValuesRequest actualRequest = ((ImportFeatureValuesRequest) actualRequests.get(0)); 2113 2114 Assert.assertEquals(entityType.toString(), actualRequest.getEntityType()); 2115 Assert.assertTrue( 2116 channelProvider.isHeaderSent( 2117 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2118 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2119 } 2120 2121 @Test importFeatureValuesExceptionTest()2122 public void importFeatureValuesExceptionTest() throws Exception { 2123 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2124 mockFeaturestoreService.addException(exception); 2125 2126 try { 2127 EntityTypeName entityType = 2128 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2129 client.importFeatureValuesAsync(entityType).get(); 2130 Assert.fail("No exception raised"); 2131 } catch (ExecutionException e) { 2132 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2133 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2134 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2135 } 2136 } 2137 2138 @Test importFeatureValuesTest2()2139 public void importFeatureValuesTest2() throws Exception { 2140 ImportFeatureValuesResponse expectedResponse = 2141 ImportFeatureValuesResponse.newBuilder() 2142 .setImportedEntityCount(-1840044274) 2143 .setImportedFeatureValueCount(-1221471427) 2144 .setInvalidRowCount(-366655966) 2145 .setTimestampOutsideRetentionRowsCount(-43092019) 2146 .build(); 2147 Operation resultOperation = 2148 Operation.newBuilder() 2149 .setName("importFeatureValuesTest") 2150 .setDone(true) 2151 .setResponse(Any.pack(expectedResponse)) 2152 .build(); 2153 mockFeaturestoreService.addResponse(resultOperation); 2154 2155 String entityType = "entityType-1482998339"; 2156 2157 ImportFeatureValuesResponse actualResponse = client.importFeatureValuesAsync(entityType).get(); 2158 Assert.assertEquals(expectedResponse, actualResponse); 2159 2160 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2161 Assert.assertEquals(1, actualRequests.size()); 2162 ImportFeatureValuesRequest actualRequest = ((ImportFeatureValuesRequest) actualRequests.get(0)); 2163 2164 Assert.assertEquals(entityType, actualRequest.getEntityType()); 2165 Assert.assertTrue( 2166 channelProvider.isHeaderSent( 2167 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2168 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2169 } 2170 2171 @Test importFeatureValuesExceptionTest2()2172 public void importFeatureValuesExceptionTest2() throws Exception { 2173 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2174 mockFeaturestoreService.addException(exception); 2175 2176 try { 2177 String entityType = "entityType-1482998339"; 2178 client.importFeatureValuesAsync(entityType).get(); 2179 Assert.fail("No exception raised"); 2180 } catch (ExecutionException e) { 2181 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2182 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2183 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2184 } 2185 } 2186 2187 @Test batchReadFeatureValuesTest()2188 public void batchReadFeatureValuesTest() throws Exception { 2189 BatchReadFeatureValuesResponse expectedResponse = 2190 BatchReadFeatureValuesResponse.newBuilder().build(); 2191 Operation resultOperation = 2192 Operation.newBuilder() 2193 .setName("batchReadFeatureValuesTest") 2194 .setDone(true) 2195 .setResponse(Any.pack(expectedResponse)) 2196 .build(); 2197 mockFeaturestoreService.addResponse(resultOperation); 2198 2199 FeaturestoreName featurestore = 2200 FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 2201 2202 BatchReadFeatureValuesResponse actualResponse = 2203 client.batchReadFeatureValuesAsync(featurestore).get(); 2204 Assert.assertEquals(expectedResponse, actualResponse); 2205 2206 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2207 Assert.assertEquals(1, actualRequests.size()); 2208 BatchReadFeatureValuesRequest actualRequest = 2209 ((BatchReadFeatureValuesRequest) actualRequests.get(0)); 2210 2211 Assert.assertEquals(featurestore.toString(), actualRequest.getFeaturestore()); 2212 Assert.assertTrue( 2213 channelProvider.isHeaderSent( 2214 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2215 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2216 } 2217 2218 @Test batchReadFeatureValuesExceptionTest()2219 public void batchReadFeatureValuesExceptionTest() throws Exception { 2220 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2221 mockFeaturestoreService.addException(exception); 2222 2223 try { 2224 FeaturestoreName featurestore = 2225 FeaturestoreName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]"); 2226 client.batchReadFeatureValuesAsync(featurestore).get(); 2227 Assert.fail("No exception raised"); 2228 } catch (ExecutionException e) { 2229 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2230 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2231 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2232 } 2233 } 2234 2235 @Test batchReadFeatureValuesTest2()2236 public void batchReadFeatureValuesTest2() throws Exception { 2237 BatchReadFeatureValuesResponse expectedResponse = 2238 BatchReadFeatureValuesResponse.newBuilder().build(); 2239 Operation resultOperation = 2240 Operation.newBuilder() 2241 .setName("batchReadFeatureValuesTest") 2242 .setDone(true) 2243 .setResponse(Any.pack(expectedResponse)) 2244 .build(); 2245 mockFeaturestoreService.addResponse(resultOperation); 2246 2247 String featurestore = "featurestore1227679659"; 2248 2249 BatchReadFeatureValuesResponse actualResponse = 2250 client.batchReadFeatureValuesAsync(featurestore).get(); 2251 Assert.assertEquals(expectedResponse, actualResponse); 2252 2253 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2254 Assert.assertEquals(1, actualRequests.size()); 2255 BatchReadFeatureValuesRequest actualRequest = 2256 ((BatchReadFeatureValuesRequest) actualRequests.get(0)); 2257 2258 Assert.assertEquals(featurestore, actualRequest.getFeaturestore()); 2259 Assert.assertTrue( 2260 channelProvider.isHeaderSent( 2261 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2262 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2263 } 2264 2265 @Test batchReadFeatureValuesExceptionTest2()2266 public void batchReadFeatureValuesExceptionTest2() throws Exception { 2267 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2268 mockFeaturestoreService.addException(exception); 2269 2270 try { 2271 String featurestore = "featurestore1227679659"; 2272 client.batchReadFeatureValuesAsync(featurestore).get(); 2273 Assert.fail("No exception raised"); 2274 } catch (ExecutionException e) { 2275 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2276 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2277 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2278 } 2279 } 2280 2281 @Test exportFeatureValuesTest()2282 public void exportFeatureValuesTest() throws Exception { 2283 ExportFeatureValuesResponse expectedResponse = ExportFeatureValuesResponse.newBuilder().build(); 2284 Operation resultOperation = 2285 Operation.newBuilder() 2286 .setName("exportFeatureValuesTest") 2287 .setDone(true) 2288 .setResponse(Any.pack(expectedResponse)) 2289 .build(); 2290 mockFeaturestoreService.addResponse(resultOperation); 2291 2292 EntityTypeName entityType = 2293 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2294 2295 ExportFeatureValuesResponse actualResponse = client.exportFeatureValuesAsync(entityType).get(); 2296 Assert.assertEquals(expectedResponse, actualResponse); 2297 2298 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2299 Assert.assertEquals(1, actualRequests.size()); 2300 ExportFeatureValuesRequest actualRequest = ((ExportFeatureValuesRequest) actualRequests.get(0)); 2301 2302 Assert.assertEquals(entityType.toString(), actualRequest.getEntityType()); 2303 Assert.assertTrue( 2304 channelProvider.isHeaderSent( 2305 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2306 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2307 } 2308 2309 @Test exportFeatureValuesExceptionTest()2310 public void exportFeatureValuesExceptionTest() throws Exception { 2311 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2312 mockFeaturestoreService.addException(exception); 2313 2314 try { 2315 EntityTypeName entityType = 2316 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2317 client.exportFeatureValuesAsync(entityType).get(); 2318 Assert.fail("No exception raised"); 2319 } catch (ExecutionException e) { 2320 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2321 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2322 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2323 } 2324 } 2325 2326 @Test exportFeatureValuesTest2()2327 public void exportFeatureValuesTest2() throws Exception { 2328 ExportFeatureValuesResponse expectedResponse = ExportFeatureValuesResponse.newBuilder().build(); 2329 Operation resultOperation = 2330 Operation.newBuilder() 2331 .setName("exportFeatureValuesTest") 2332 .setDone(true) 2333 .setResponse(Any.pack(expectedResponse)) 2334 .build(); 2335 mockFeaturestoreService.addResponse(resultOperation); 2336 2337 String entityType = "entityType-1482998339"; 2338 2339 ExportFeatureValuesResponse actualResponse = client.exportFeatureValuesAsync(entityType).get(); 2340 Assert.assertEquals(expectedResponse, actualResponse); 2341 2342 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2343 Assert.assertEquals(1, actualRequests.size()); 2344 ExportFeatureValuesRequest actualRequest = ((ExportFeatureValuesRequest) actualRequests.get(0)); 2345 2346 Assert.assertEquals(entityType, actualRequest.getEntityType()); 2347 Assert.assertTrue( 2348 channelProvider.isHeaderSent( 2349 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2350 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2351 } 2352 2353 @Test exportFeatureValuesExceptionTest2()2354 public void exportFeatureValuesExceptionTest2() throws Exception { 2355 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2356 mockFeaturestoreService.addException(exception); 2357 2358 try { 2359 String entityType = "entityType-1482998339"; 2360 client.exportFeatureValuesAsync(entityType).get(); 2361 Assert.fail("No exception raised"); 2362 } catch (ExecutionException e) { 2363 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2364 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2365 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2366 } 2367 } 2368 2369 @Test deleteFeatureValuesTest()2370 public void deleteFeatureValuesTest() throws Exception { 2371 DeleteFeatureValuesResponse expectedResponse = DeleteFeatureValuesResponse.newBuilder().build(); 2372 Operation resultOperation = 2373 Operation.newBuilder() 2374 .setName("deleteFeatureValuesTest") 2375 .setDone(true) 2376 .setResponse(Any.pack(expectedResponse)) 2377 .build(); 2378 mockFeaturestoreService.addResponse(resultOperation); 2379 2380 EntityTypeName entityType = 2381 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2382 2383 DeleteFeatureValuesResponse actualResponse = client.deleteFeatureValuesAsync(entityType).get(); 2384 Assert.assertEquals(expectedResponse, actualResponse); 2385 2386 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2387 Assert.assertEquals(1, actualRequests.size()); 2388 DeleteFeatureValuesRequest actualRequest = ((DeleteFeatureValuesRequest) actualRequests.get(0)); 2389 2390 Assert.assertEquals(entityType.toString(), actualRequest.getEntityType()); 2391 Assert.assertTrue( 2392 channelProvider.isHeaderSent( 2393 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2394 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2395 } 2396 2397 @Test deleteFeatureValuesExceptionTest()2398 public void deleteFeatureValuesExceptionTest() throws Exception { 2399 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2400 mockFeaturestoreService.addException(exception); 2401 2402 try { 2403 EntityTypeName entityType = 2404 EntityTypeName.of("[PROJECT]", "[LOCATION]", "[FEATURESTORE]", "[ENTITY_TYPE]"); 2405 client.deleteFeatureValuesAsync(entityType).get(); 2406 Assert.fail("No exception raised"); 2407 } catch (ExecutionException e) { 2408 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2409 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2410 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2411 } 2412 } 2413 2414 @Test deleteFeatureValuesTest2()2415 public void deleteFeatureValuesTest2() throws Exception { 2416 DeleteFeatureValuesResponse expectedResponse = DeleteFeatureValuesResponse.newBuilder().build(); 2417 Operation resultOperation = 2418 Operation.newBuilder() 2419 .setName("deleteFeatureValuesTest") 2420 .setDone(true) 2421 .setResponse(Any.pack(expectedResponse)) 2422 .build(); 2423 mockFeaturestoreService.addResponse(resultOperation); 2424 2425 String entityType = "entityType-1482998339"; 2426 2427 DeleteFeatureValuesResponse actualResponse = client.deleteFeatureValuesAsync(entityType).get(); 2428 Assert.assertEquals(expectedResponse, actualResponse); 2429 2430 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2431 Assert.assertEquals(1, actualRequests.size()); 2432 DeleteFeatureValuesRequest actualRequest = ((DeleteFeatureValuesRequest) actualRequests.get(0)); 2433 2434 Assert.assertEquals(entityType, actualRequest.getEntityType()); 2435 Assert.assertTrue( 2436 channelProvider.isHeaderSent( 2437 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2438 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2439 } 2440 2441 @Test deleteFeatureValuesExceptionTest2()2442 public void deleteFeatureValuesExceptionTest2() throws Exception { 2443 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2444 mockFeaturestoreService.addException(exception); 2445 2446 try { 2447 String entityType = "entityType-1482998339"; 2448 client.deleteFeatureValuesAsync(entityType).get(); 2449 Assert.fail("No exception raised"); 2450 } catch (ExecutionException e) { 2451 Assert.assertEquals(InvalidArgumentException.class, e.getCause().getClass()); 2452 InvalidArgumentException apiException = ((InvalidArgumentException) e.getCause()); 2453 Assert.assertEquals(StatusCode.Code.INVALID_ARGUMENT, apiException.getStatusCode().getCode()); 2454 } 2455 } 2456 2457 @Test searchFeaturesTest()2458 public void searchFeaturesTest() throws Exception { 2459 Feature responsesElement = Feature.newBuilder().build(); 2460 SearchFeaturesResponse expectedResponse = 2461 SearchFeaturesResponse.newBuilder() 2462 .setNextPageToken("") 2463 .addAllFeatures(Arrays.asList(responsesElement)) 2464 .build(); 2465 mockFeaturestoreService.addResponse(expectedResponse); 2466 2467 LocationName location = LocationName.of("[PROJECT]", "[LOCATION]"); 2468 2469 SearchFeaturesPagedResponse pagedListResponse = client.searchFeatures(location); 2470 2471 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 2472 2473 Assert.assertEquals(1, resources.size()); 2474 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 2475 2476 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2477 Assert.assertEquals(1, actualRequests.size()); 2478 SearchFeaturesRequest actualRequest = ((SearchFeaturesRequest) actualRequests.get(0)); 2479 2480 Assert.assertEquals(location.toString(), actualRequest.getLocation()); 2481 Assert.assertTrue( 2482 channelProvider.isHeaderSent( 2483 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2484 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2485 } 2486 2487 @Test searchFeaturesExceptionTest()2488 public void searchFeaturesExceptionTest() throws Exception { 2489 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2490 mockFeaturestoreService.addException(exception); 2491 2492 try { 2493 LocationName location = LocationName.of("[PROJECT]", "[LOCATION]"); 2494 client.searchFeatures(location); 2495 Assert.fail("No exception raised"); 2496 } catch (InvalidArgumentException e) { 2497 // Expected exception. 2498 } 2499 } 2500 2501 @Test searchFeaturesTest2()2502 public void searchFeaturesTest2() throws Exception { 2503 Feature responsesElement = Feature.newBuilder().build(); 2504 SearchFeaturesResponse expectedResponse = 2505 SearchFeaturesResponse.newBuilder() 2506 .setNextPageToken("") 2507 .addAllFeatures(Arrays.asList(responsesElement)) 2508 .build(); 2509 mockFeaturestoreService.addResponse(expectedResponse); 2510 2511 String location = "location1901043637"; 2512 2513 SearchFeaturesPagedResponse pagedListResponse = client.searchFeatures(location); 2514 2515 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 2516 2517 Assert.assertEquals(1, resources.size()); 2518 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 2519 2520 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2521 Assert.assertEquals(1, actualRequests.size()); 2522 SearchFeaturesRequest actualRequest = ((SearchFeaturesRequest) actualRequests.get(0)); 2523 2524 Assert.assertEquals(location, actualRequest.getLocation()); 2525 Assert.assertTrue( 2526 channelProvider.isHeaderSent( 2527 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2528 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2529 } 2530 2531 @Test searchFeaturesExceptionTest2()2532 public void searchFeaturesExceptionTest2() throws Exception { 2533 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2534 mockFeaturestoreService.addException(exception); 2535 2536 try { 2537 String location = "location1901043637"; 2538 client.searchFeatures(location); 2539 Assert.fail("No exception raised"); 2540 } catch (InvalidArgumentException e) { 2541 // Expected exception. 2542 } 2543 } 2544 2545 @Test searchFeaturesTest3()2546 public void searchFeaturesTest3() throws Exception { 2547 Feature responsesElement = Feature.newBuilder().build(); 2548 SearchFeaturesResponse expectedResponse = 2549 SearchFeaturesResponse.newBuilder() 2550 .setNextPageToken("") 2551 .addAllFeatures(Arrays.asList(responsesElement)) 2552 .build(); 2553 mockFeaturestoreService.addResponse(expectedResponse); 2554 2555 LocationName location = LocationName.of("[PROJECT]", "[LOCATION]"); 2556 String query = "query107944136"; 2557 2558 SearchFeaturesPagedResponse pagedListResponse = client.searchFeatures(location, query); 2559 2560 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 2561 2562 Assert.assertEquals(1, resources.size()); 2563 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 2564 2565 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2566 Assert.assertEquals(1, actualRequests.size()); 2567 SearchFeaturesRequest actualRequest = ((SearchFeaturesRequest) actualRequests.get(0)); 2568 2569 Assert.assertEquals(location.toString(), actualRequest.getLocation()); 2570 Assert.assertEquals(query, actualRequest.getQuery()); 2571 Assert.assertTrue( 2572 channelProvider.isHeaderSent( 2573 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2574 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2575 } 2576 2577 @Test searchFeaturesExceptionTest3()2578 public void searchFeaturesExceptionTest3() throws Exception { 2579 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2580 mockFeaturestoreService.addException(exception); 2581 2582 try { 2583 LocationName location = LocationName.of("[PROJECT]", "[LOCATION]"); 2584 String query = "query107944136"; 2585 client.searchFeatures(location, query); 2586 Assert.fail("No exception raised"); 2587 } catch (InvalidArgumentException e) { 2588 // Expected exception. 2589 } 2590 } 2591 2592 @Test searchFeaturesTest4()2593 public void searchFeaturesTest4() throws Exception { 2594 Feature responsesElement = Feature.newBuilder().build(); 2595 SearchFeaturesResponse expectedResponse = 2596 SearchFeaturesResponse.newBuilder() 2597 .setNextPageToken("") 2598 .addAllFeatures(Arrays.asList(responsesElement)) 2599 .build(); 2600 mockFeaturestoreService.addResponse(expectedResponse); 2601 2602 String location = "location1901043637"; 2603 String query = "query107944136"; 2604 2605 SearchFeaturesPagedResponse pagedListResponse = client.searchFeatures(location, query); 2606 2607 List<Feature> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 2608 2609 Assert.assertEquals(1, resources.size()); 2610 Assert.assertEquals(expectedResponse.getFeaturesList().get(0), resources.get(0)); 2611 2612 List<AbstractMessage> actualRequests = mockFeaturestoreService.getRequests(); 2613 Assert.assertEquals(1, actualRequests.size()); 2614 SearchFeaturesRequest actualRequest = ((SearchFeaturesRequest) actualRequests.get(0)); 2615 2616 Assert.assertEquals(location, actualRequest.getLocation()); 2617 Assert.assertEquals(query, actualRequest.getQuery()); 2618 Assert.assertTrue( 2619 channelProvider.isHeaderSent( 2620 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2621 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2622 } 2623 2624 @Test searchFeaturesExceptionTest4()2625 public void searchFeaturesExceptionTest4() throws Exception { 2626 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2627 mockFeaturestoreService.addException(exception); 2628 2629 try { 2630 String location = "location1901043637"; 2631 String query = "query107944136"; 2632 client.searchFeatures(location, query); 2633 Assert.fail("No exception raised"); 2634 } catch (InvalidArgumentException e) { 2635 // Expected exception. 2636 } 2637 } 2638 2639 @Test listLocationsTest()2640 public void listLocationsTest() throws Exception { 2641 Location responsesElement = Location.newBuilder().build(); 2642 ListLocationsResponse expectedResponse = 2643 ListLocationsResponse.newBuilder() 2644 .setNextPageToken("") 2645 .addAllLocations(Arrays.asList(responsesElement)) 2646 .build(); 2647 mockLocations.addResponse(expectedResponse); 2648 2649 ListLocationsRequest request = 2650 ListLocationsRequest.newBuilder() 2651 .setName("name3373707") 2652 .setFilter("filter-1274492040") 2653 .setPageSize(883849137) 2654 .setPageToken("pageToken873572522") 2655 .build(); 2656 2657 ListLocationsPagedResponse pagedListResponse = client.listLocations(request); 2658 2659 List<Location> resources = Lists.newArrayList(pagedListResponse.iterateAll()); 2660 2661 Assert.assertEquals(1, resources.size()); 2662 Assert.assertEquals(expectedResponse.getLocationsList().get(0), resources.get(0)); 2663 2664 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 2665 Assert.assertEquals(1, actualRequests.size()); 2666 ListLocationsRequest actualRequest = ((ListLocationsRequest) actualRequests.get(0)); 2667 2668 Assert.assertEquals(request.getName(), actualRequest.getName()); 2669 Assert.assertEquals(request.getFilter(), actualRequest.getFilter()); 2670 Assert.assertEquals(request.getPageSize(), actualRequest.getPageSize()); 2671 Assert.assertEquals(request.getPageToken(), actualRequest.getPageToken()); 2672 Assert.assertTrue( 2673 channelProvider.isHeaderSent( 2674 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2675 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2676 } 2677 2678 @Test listLocationsExceptionTest()2679 public void listLocationsExceptionTest() throws Exception { 2680 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2681 mockLocations.addException(exception); 2682 2683 try { 2684 ListLocationsRequest request = 2685 ListLocationsRequest.newBuilder() 2686 .setName("name3373707") 2687 .setFilter("filter-1274492040") 2688 .setPageSize(883849137) 2689 .setPageToken("pageToken873572522") 2690 .build(); 2691 client.listLocations(request); 2692 Assert.fail("No exception raised"); 2693 } catch (InvalidArgumentException e) { 2694 // Expected exception. 2695 } 2696 } 2697 2698 @Test getLocationTest()2699 public void getLocationTest() throws Exception { 2700 Location expectedResponse = 2701 Location.newBuilder() 2702 .setName("name3373707") 2703 .setLocationId("locationId1541836720") 2704 .setDisplayName("displayName1714148973") 2705 .putAllLabels(new HashMap<String, String>()) 2706 .setMetadata(Any.newBuilder().build()) 2707 .build(); 2708 mockLocations.addResponse(expectedResponse); 2709 2710 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 2711 2712 Location actualResponse = client.getLocation(request); 2713 Assert.assertEquals(expectedResponse, actualResponse); 2714 2715 List<AbstractMessage> actualRequests = mockLocations.getRequests(); 2716 Assert.assertEquals(1, actualRequests.size()); 2717 GetLocationRequest actualRequest = ((GetLocationRequest) actualRequests.get(0)); 2718 2719 Assert.assertEquals(request.getName(), actualRequest.getName()); 2720 Assert.assertTrue( 2721 channelProvider.isHeaderSent( 2722 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2723 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2724 } 2725 2726 @Test getLocationExceptionTest()2727 public void getLocationExceptionTest() throws Exception { 2728 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2729 mockLocations.addException(exception); 2730 2731 try { 2732 GetLocationRequest request = GetLocationRequest.newBuilder().setName("name3373707").build(); 2733 client.getLocation(request); 2734 Assert.fail("No exception raised"); 2735 } catch (InvalidArgumentException e) { 2736 // Expected exception. 2737 } 2738 } 2739 2740 @Test setIamPolicyTest()2741 public void setIamPolicyTest() throws Exception { 2742 Policy expectedResponse = 2743 Policy.newBuilder() 2744 .setVersion(351608024) 2745 .addAllBindings(new ArrayList<Binding>()) 2746 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 2747 .setEtag(ByteString.EMPTY) 2748 .build(); 2749 mockIAMPolicy.addResponse(expectedResponse); 2750 2751 SetIamPolicyRequest request = 2752 SetIamPolicyRequest.newBuilder() 2753 .setResource( 2754 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2755 .toString()) 2756 .setPolicy(Policy.newBuilder().build()) 2757 .setUpdateMask(FieldMask.newBuilder().build()) 2758 .build(); 2759 2760 Policy actualResponse = client.setIamPolicy(request); 2761 Assert.assertEquals(expectedResponse, actualResponse); 2762 2763 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 2764 Assert.assertEquals(1, actualRequests.size()); 2765 SetIamPolicyRequest actualRequest = ((SetIamPolicyRequest) actualRequests.get(0)); 2766 2767 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 2768 Assert.assertEquals(request.getPolicy(), actualRequest.getPolicy()); 2769 Assert.assertEquals(request.getUpdateMask(), actualRequest.getUpdateMask()); 2770 Assert.assertTrue( 2771 channelProvider.isHeaderSent( 2772 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2773 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2774 } 2775 2776 @Test setIamPolicyExceptionTest()2777 public void setIamPolicyExceptionTest() throws Exception { 2778 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2779 mockIAMPolicy.addException(exception); 2780 2781 try { 2782 SetIamPolicyRequest request = 2783 SetIamPolicyRequest.newBuilder() 2784 .setResource( 2785 EndpointName.ofProjectLocationEndpointName( 2786 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2787 .toString()) 2788 .setPolicy(Policy.newBuilder().build()) 2789 .setUpdateMask(FieldMask.newBuilder().build()) 2790 .build(); 2791 client.setIamPolicy(request); 2792 Assert.fail("No exception raised"); 2793 } catch (InvalidArgumentException e) { 2794 // Expected exception. 2795 } 2796 } 2797 2798 @Test getIamPolicyTest()2799 public void getIamPolicyTest() throws Exception { 2800 Policy expectedResponse = 2801 Policy.newBuilder() 2802 .setVersion(351608024) 2803 .addAllBindings(new ArrayList<Binding>()) 2804 .addAllAuditConfigs(new ArrayList<AuditConfig>()) 2805 .setEtag(ByteString.EMPTY) 2806 .build(); 2807 mockIAMPolicy.addResponse(expectedResponse); 2808 2809 GetIamPolicyRequest request = 2810 GetIamPolicyRequest.newBuilder() 2811 .setResource( 2812 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2813 .toString()) 2814 .setOptions(GetPolicyOptions.newBuilder().build()) 2815 .build(); 2816 2817 Policy actualResponse = client.getIamPolicy(request); 2818 Assert.assertEquals(expectedResponse, actualResponse); 2819 2820 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 2821 Assert.assertEquals(1, actualRequests.size()); 2822 GetIamPolicyRequest actualRequest = ((GetIamPolicyRequest) actualRequests.get(0)); 2823 2824 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 2825 Assert.assertEquals(request.getOptions(), actualRequest.getOptions()); 2826 Assert.assertTrue( 2827 channelProvider.isHeaderSent( 2828 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2829 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2830 } 2831 2832 @Test getIamPolicyExceptionTest()2833 public void getIamPolicyExceptionTest() throws Exception { 2834 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2835 mockIAMPolicy.addException(exception); 2836 2837 try { 2838 GetIamPolicyRequest request = 2839 GetIamPolicyRequest.newBuilder() 2840 .setResource( 2841 EndpointName.ofProjectLocationEndpointName( 2842 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2843 .toString()) 2844 .setOptions(GetPolicyOptions.newBuilder().build()) 2845 .build(); 2846 client.getIamPolicy(request); 2847 Assert.fail("No exception raised"); 2848 } catch (InvalidArgumentException e) { 2849 // Expected exception. 2850 } 2851 } 2852 2853 @Test testIamPermissionsTest()2854 public void testIamPermissionsTest() throws Exception { 2855 TestIamPermissionsResponse expectedResponse = 2856 TestIamPermissionsResponse.newBuilder().addAllPermissions(new ArrayList<String>()).build(); 2857 mockIAMPolicy.addResponse(expectedResponse); 2858 2859 TestIamPermissionsRequest request = 2860 TestIamPermissionsRequest.newBuilder() 2861 .setResource( 2862 EndpointName.ofProjectLocationEndpointName("[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2863 .toString()) 2864 .addAllPermissions(new ArrayList<String>()) 2865 .build(); 2866 2867 TestIamPermissionsResponse actualResponse = client.testIamPermissions(request); 2868 Assert.assertEquals(expectedResponse, actualResponse); 2869 2870 List<AbstractMessage> actualRequests = mockIAMPolicy.getRequests(); 2871 Assert.assertEquals(1, actualRequests.size()); 2872 TestIamPermissionsRequest actualRequest = ((TestIamPermissionsRequest) actualRequests.get(0)); 2873 2874 Assert.assertEquals(request.getResource(), actualRequest.getResource()); 2875 Assert.assertEquals(request.getPermissionsList(), actualRequest.getPermissionsList()); 2876 Assert.assertTrue( 2877 channelProvider.isHeaderSent( 2878 ApiClientHeaderProvider.getDefaultApiClientHeaderKey(), 2879 GaxGrpcProperties.getDefaultApiClientHeaderPattern())); 2880 } 2881 2882 @Test testIamPermissionsExceptionTest()2883 public void testIamPermissionsExceptionTest() throws Exception { 2884 StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT); 2885 mockIAMPolicy.addException(exception); 2886 2887 try { 2888 TestIamPermissionsRequest request = 2889 TestIamPermissionsRequest.newBuilder() 2890 .setResource( 2891 EndpointName.ofProjectLocationEndpointName( 2892 "[PROJECT]", "[LOCATION]", "[ENDPOINT]") 2893 .toString()) 2894 .addAllPermissions(new ArrayList<String>()) 2895 .build(); 2896 client.testIamPermissions(request); 2897 Assert.fail("No exception raised"); 2898 } catch (InvalidArgumentException e) { 2899 // Expected exception. 2900 } 2901 } 2902 } 2903