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