• 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.orchestration.airflow.service.v1;
18 
19 import static com.google.cloud.orchestration.airflow.service.v1.ImageVersionsClient.ListImageVersionsPagedResponse;
20 
21 import com.google.api.gax.core.NoCredentialsProvider;
22 import com.google.api.gax.grpc.GaxGrpcProperties;
23 import com.google.api.gax.grpc.testing.LocalChannelProvider;
24 import com.google.api.gax.grpc.testing.MockGrpcService;
25 import com.google.api.gax.grpc.testing.MockServiceHelper;
26 import com.google.api.gax.rpc.ApiClientHeaderProvider;
27 import com.google.api.gax.rpc.InvalidArgumentException;
28 import com.google.common.collect.Lists;
29 import com.google.protobuf.AbstractMessage;
30 import io.grpc.StatusRuntimeException;
31 import java.io.IOException;
32 import java.util.Arrays;
33 import java.util.List;
34 import java.util.UUID;
35 import javax.annotation.Generated;
36 import org.junit.After;
37 import org.junit.AfterClass;
38 import org.junit.Assert;
39 import org.junit.Before;
40 import org.junit.BeforeClass;
41 import org.junit.Test;
42 
43 @Generated("by gapic-generator-java")
44 public class ImageVersionsClientTest {
45   private static MockImageVersions mockImageVersions;
46   private static MockServiceHelper mockServiceHelper;
47   private LocalChannelProvider channelProvider;
48   private ImageVersionsClient client;
49 
50   @BeforeClass
startStaticServer()51   public static void startStaticServer() {
52     mockImageVersions = new MockImageVersions();
53     mockServiceHelper =
54         new MockServiceHelper(
55             UUID.randomUUID().toString(), Arrays.<MockGrpcService>asList(mockImageVersions));
56     mockServiceHelper.start();
57   }
58 
59   @AfterClass
stopServer()60   public static void stopServer() {
61     mockServiceHelper.stop();
62   }
63 
64   @Before
setUp()65   public void setUp() throws IOException {
66     mockServiceHelper.reset();
67     channelProvider = mockServiceHelper.createChannelProvider();
68     ImageVersionsSettings settings =
69         ImageVersionsSettings.newBuilder()
70             .setTransportChannelProvider(channelProvider)
71             .setCredentialsProvider(NoCredentialsProvider.create())
72             .build();
73     client = ImageVersionsClient.create(settings);
74   }
75 
76   @After
tearDown()77   public void tearDown() throws Exception {
78     client.close();
79   }
80 
81   @Test
listImageVersionsTest()82   public void listImageVersionsTest() throws Exception {
83     ImageVersion responsesElement = ImageVersion.newBuilder().build();
84     ListImageVersionsResponse expectedResponse =
85         ListImageVersionsResponse.newBuilder()
86             .setNextPageToken("")
87             .addAllImageVersions(Arrays.asList(responsesElement))
88             .build();
89     mockImageVersions.addResponse(expectedResponse);
90 
91     String parent = "parent-995424086";
92 
93     ListImageVersionsPagedResponse pagedListResponse = client.listImageVersions(parent);
94 
95     List<ImageVersion> resources = Lists.newArrayList(pagedListResponse.iterateAll());
96 
97     Assert.assertEquals(1, resources.size());
98     Assert.assertEquals(expectedResponse.getImageVersionsList().get(0), resources.get(0));
99 
100     List<AbstractMessage> actualRequests = mockImageVersions.getRequests();
101     Assert.assertEquals(1, actualRequests.size());
102     ListImageVersionsRequest actualRequest = ((ListImageVersionsRequest) actualRequests.get(0));
103 
104     Assert.assertEquals(parent, actualRequest.getParent());
105     Assert.assertTrue(
106         channelProvider.isHeaderSent(
107             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
108             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
109   }
110 
111   @Test
listImageVersionsExceptionTest()112   public void listImageVersionsExceptionTest() throws Exception {
113     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
114     mockImageVersions.addException(exception);
115 
116     try {
117       String parent = "parent-995424086";
118       client.listImageVersions(parent);
119       Assert.fail("No exception raised");
120     } catch (InvalidArgumentException e) {
121       // Expected exception.
122     }
123   }
124 }
125