• 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.talent.v4;
18 
19 import static com.google.cloud.talent.v4.CompanyServiceClient.ListCompaniesPagedResponse;
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 com.google.protobuf.Empty;
31 import com.google.protobuf.FieldMask;
32 import io.grpc.StatusRuntimeException;
33 import java.io.IOException;
34 import java.util.ArrayList;
35 import java.util.Arrays;
36 import java.util.List;
37 import java.util.UUID;
38 import javax.annotation.Generated;
39 import org.junit.After;
40 import org.junit.AfterClass;
41 import org.junit.Assert;
42 import org.junit.Before;
43 import org.junit.BeforeClass;
44 import org.junit.Test;
45 
46 @Generated("by gapic-generator-java")
47 public class CompanyServiceClientTest {
48   private static MockCompanyService mockCompanyService;
49   private static MockServiceHelper mockServiceHelper;
50   private LocalChannelProvider channelProvider;
51   private CompanyServiceClient client;
52 
53   @BeforeClass
startStaticServer()54   public static void startStaticServer() {
55     mockCompanyService = new MockCompanyService();
56     mockServiceHelper =
57         new MockServiceHelper(
58             UUID.randomUUID().toString(), Arrays.<MockGrpcService>asList(mockCompanyService));
59     mockServiceHelper.start();
60   }
61 
62   @AfterClass
stopServer()63   public static void stopServer() {
64     mockServiceHelper.stop();
65   }
66 
67   @Before
setUp()68   public void setUp() throws IOException {
69     mockServiceHelper.reset();
70     channelProvider = mockServiceHelper.createChannelProvider();
71     CompanyServiceSettings settings =
72         CompanyServiceSettings.newBuilder()
73             .setTransportChannelProvider(channelProvider)
74             .setCredentialsProvider(NoCredentialsProvider.create())
75             .build();
76     client = CompanyServiceClient.create(settings);
77   }
78 
79   @After
tearDown()80   public void tearDown() throws Exception {
81     client.close();
82   }
83 
84   @Test
createCompanyTest()85   public void createCompanyTest() throws Exception {
86     Company expectedResponse =
87         Company.newBuilder()
88             .setName(CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]").toString())
89             .setDisplayName("displayName1714148973")
90             .setExternalId("externalId-1699764666")
91             .setSize(CompanySize.forNumber(0))
92             .setHeadquartersAddress("headquartersAddress555829453")
93             .setHiringAgency(true)
94             .setEeoText("eeoText-1854750308")
95             .setWebsiteUri("websiteUri1317135057")
96             .setCareerSiteUri("careerSiteUri2004228935")
97             .setImageUri("imageUri-859610607")
98             .addAllKeywordSearchableJobCustomAttributes(new ArrayList<String>())
99             .setDerivedInfo(Company.DerivedInfo.newBuilder().build())
100             .setSuspended(true)
101             .build();
102     mockCompanyService.addResponse(expectedResponse);
103 
104     TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
105     Company company = Company.newBuilder().build();
106 
107     Company actualResponse = client.createCompany(parent, company);
108     Assert.assertEquals(expectedResponse, actualResponse);
109 
110     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
111     Assert.assertEquals(1, actualRequests.size());
112     CreateCompanyRequest actualRequest = ((CreateCompanyRequest) actualRequests.get(0));
113 
114     Assert.assertEquals(parent.toString(), actualRequest.getParent());
115     Assert.assertEquals(company, actualRequest.getCompany());
116     Assert.assertTrue(
117         channelProvider.isHeaderSent(
118             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
119             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
120   }
121 
122   @Test
createCompanyExceptionTest()123   public void createCompanyExceptionTest() throws Exception {
124     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
125     mockCompanyService.addException(exception);
126 
127     try {
128       TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
129       Company company = Company.newBuilder().build();
130       client.createCompany(parent, company);
131       Assert.fail("No exception raised");
132     } catch (InvalidArgumentException e) {
133       // Expected exception.
134     }
135   }
136 
137   @Test
createCompanyTest2()138   public void createCompanyTest2() throws Exception {
139     Company expectedResponse =
140         Company.newBuilder()
141             .setName(CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]").toString())
142             .setDisplayName("displayName1714148973")
143             .setExternalId("externalId-1699764666")
144             .setSize(CompanySize.forNumber(0))
145             .setHeadquartersAddress("headquartersAddress555829453")
146             .setHiringAgency(true)
147             .setEeoText("eeoText-1854750308")
148             .setWebsiteUri("websiteUri1317135057")
149             .setCareerSiteUri("careerSiteUri2004228935")
150             .setImageUri("imageUri-859610607")
151             .addAllKeywordSearchableJobCustomAttributes(new ArrayList<String>())
152             .setDerivedInfo(Company.DerivedInfo.newBuilder().build())
153             .setSuspended(true)
154             .build();
155     mockCompanyService.addResponse(expectedResponse);
156 
157     String parent = "parent-995424086";
158     Company company = Company.newBuilder().build();
159 
160     Company actualResponse = client.createCompany(parent, company);
161     Assert.assertEquals(expectedResponse, actualResponse);
162 
163     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
164     Assert.assertEquals(1, actualRequests.size());
165     CreateCompanyRequest actualRequest = ((CreateCompanyRequest) actualRequests.get(0));
166 
167     Assert.assertEquals(parent, actualRequest.getParent());
168     Assert.assertEquals(company, actualRequest.getCompany());
169     Assert.assertTrue(
170         channelProvider.isHeaderSent(
171             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
172             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
173   }
174 
175   @Test
createCompanyExceptionTest2()176   public void createCompanyExceptionTest2() throws Exception {
177     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
178     mockCompanyService.addException(exception);
179 
180     try {
181       String parent = "parent-995424086";
182       Company company = Company.newBuilder().build();
183       client.createCompany(parent, company);
184       Assert.fail("No exception raised");
185     } catch (InvalidArgumentException e) {
186       // Expected exception.
187     }
188   }
189 
190   @Test
getCompanyTest()191   public void getCompanyTest() throws Exception {
192     Company expectedResponse =
193         Company.newBuilder()
194             .setName(CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]").toString())
195             .setDisplayName("displayName1714148973")
196             .setExternalId("externalId-1699764666")
197             .setSize(CompanySize.forNumber(0))
198             .setHeadquartersAddress("headquartersAddress555829453")
199             .setHiringAgency(true)
200             .setEeoText("eeoText-1854750308")
201             .setWebsiteUri("websiteUri1317135057")
202             .setCareerSiteUri("careerSiteUri2004228935")
203             .setImageUri("imageUri-859610607")
204             .addAllKeywordSearchableJobCustomAttributes(new ArrayList<String>())
205             .setDerivedInfo(Company.DerivedInfo.newBuilder().build())
206             .setSuspended(true)
207             .build();
208     mockCompanyService.addResponse(expectedResponse);
209 
210     CompanyName name = CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]");
211 
212     Company actualResponse = client.getCompany(name);
213     Assert.assertEquals(expectedResponse, actualResponse);
214 
215     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
216     Assert.assertEquals(1, actualRequests.size());
217     GetCompanyRequest actualRequest = ((GetCompanyRequest) actualRequests.get(0));
218 
219     Assert.assertEquals(name.toString(), actualRequest.getName());
220     Assert.assertTrue(
221         channelProvider.isHeaderSent(
222             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
223             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
224   }
225 
226   @Test
getCompanyExceptionTest()227   public void getCompanyExceptionTest() throws Exception {
228     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
229     mockCompanyService.addException(exception);
230 
231     try {
232       CompanyName name = CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]");
233       client.getCompany(name);
234       Assert.fail("No exception raised");
235     } catch (InvalidArgumentException e) {
236       // Expected exception.
237     }
238   }
239 
240   @Test
getCompanyTest2()241   public void getCompanyTest2() throws Exception {
242     Company expectedResponse =
243         Company.newBuilder()
244             .setName(CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]").toString())
245             .setDisplayName("displayName1714148973")
246             .setExternalId("externalId-1699764666")
247             .setSize(CompanySize.forNumber(0))
248             .setHeadquartersAddress("headquartersAddress555829453")
249             .setHiringAgency(true)
250             .setEeoText("eeoText-1854750308")
251             .setWebsiteUri("websiteUri1317135057")
252             .setCareerSiteUri("careerSiteUri2004228935")
253             .setImageUri("imageUri-859610607")
254             .addAllKeywordSearchableJobCustomAttributes(new ArrayList<String>())
255             .setDerivedInfo(Company.DerivedInfo.newBuilder().build())
256             .setSuspended(true)
257             .build();
258     mockCompanyService.addResponse(expectedResponse);
259 
260     String name = "name3373707";
261 
262     Company actualResponse = client.getCompany(name);
263     Assert.assertEquals(expectedResponse, actualResponse);
264 
265     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
266     Assert.assertEquals(1, actualRequests.size());
267     GetCompanyRequest actualRequest = ((GetCompanyRequest) actualRequests.get(0));
268 
269     Assert.assertEquals(name, actualRequest.getName());
270     Assert.assertTrue(
271         channelProvider.isHeaderSent(
272             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
273             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
274   }
275 
276   @Test
getCompanyExceptionTest2()277   public void getCompanyExceptionTest2() throws Exception {
278     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
279     mockCompanyService.addException(exception);
280 
281     try {
282       String name = "name3373707";
283       client.getCompany(name);
284       Assert.fail("No exception raised");
285     } catch (InvalidArgumentException e) {
286       // Expected exception.
287     }
288   }
289 
290   @Test
updateCompanyTest()291   public void updateCompanyTest() throws Exception {
292     Company expectedResponse =
293         Company.newBuilder()
294             .setName(CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]").toString())
295             .setDisplayName("displayName1714148973")
296             .setExternalId("externalId-1699764666")
297             .setSize(CompanySize.forNumber(0))
298             .setHeadquartersAddress("headquartersAddress555829453")
299             .setHiringAgency(true)
300             .setEeoText("eeoText-1854750308")
301             .setWebsiteUri("websiteUri1317135057")
302             .setCareerSiteUri("careerSiteUri2004228935")
303             .setImageUri("imageUri-859610607")
304             .addAllKeywordSearchableJobCustomAttributes(new ArrayList<String>())
305             .setDerivedInfo(Company.DerivedInfo.newBuilder().build())
306             .setSuspended(true)
307             .build();
308     mockCompanyService.addResponse(expectedResponse);
309 
310     Company company = Company.newBuilder().build();
311     FieldMask updateMask = FieldMask.newBuilder().build();
312 
313     Company actualResponse = client.updateCompany(company, updateMask);
314     Assert.assertEquals(expectedResponse, actualResponse);
315 
316     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
317     Assert.assertEquals(1, actualRequests.size());
318     UpdateCompanyRequest actualRequest = ((UpdateCompanyRequest) actualRequests.get(0));
319 
320     Assert.assertEquals(company, actualRequest.getCompany());
321     Assert.assertEquals(updateMask, actualRequest.getUpdateMask());
322     Assert.assertTrue(
323         channelProvider.isHeaderSent(
324             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
325             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
326   }
327 
328   @Test
updateCompanyExceptionTest()329   public void updateCompanyExceptionTest() throws Exception {
330     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
331     mockCompanyService.addException(exception);
332 
333     try {
334       Company company = Company.newBuilder().build();
335       FieldMask updateMask = FieldMask.newBuilder().build();
336       client.updateCompany(company, updateMask);
337       Assert.fail("No exception raised");
338     } catch (InvalidArgumentException e) {
339       // Expected exception.
340     }
341   }
342 
343   @Test
deleteCompanyTest()344   public void deleteCompanyTest() throws Exception {
345     Empty expectedResponse = Empty.newBuilder().build();
346     mockCompanyService.addResponse(expectedResponse);
347 
348     CompanyName name = CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]");
349 
350     client.deleteCompany(name);
351 
352     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
353     Assert.assertEquals(1, actualRequests.size());
354     DeleteCompanyRequest actualRequest = ((DeleteCompanyRequest) actualRequests.get(0));
355 
356     Assert.assertEquals(name.toString(), actualRequest.getName());
357     Assert.assertTrue(
358         channelProvider.isHeaderSent(
359             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
360             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
361   }
362 
363   @Test
deleteCompanyExceptionTest()364   public void deleteCompanyExceptionTest() throws Exception {
365     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
366     mockCompanyService.addException(exception);
367 
368     try {
369       CompanyName name = CompanyName.of("[PROJECT]", "[TENANT]", "[COMPANY]");
370       client.deleteCompany(name);
371       Assert.fail("No exception raised");
372     } catch (InvalidArgumentException e) {
373       // Expected exception.
374     }
375   }
376 
377   @Test
deleteCompanyTest2()378   public void deleteCompanyTest2() throws Exception {
379     Empty expectedResponse = Empty.newBuilder().build();
380     mockCompanyService.addResponse(expectedResponse);
381 
382     String name = "name3373707";
383 
384     client.deleteCompany(name);
385 
386     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
387     Assert.assertEquals(1, actualRequests.size());
388     DeleteCompanyRequest actualRequest = ((DeleteCompanyRequest) actualRequests.get(0));
389 
390     Assert.assertEquals(name, actualRequest.getName());
391     Assert.assertTrue(
392         channelProvider.isHeaderSent(
393             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
394             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
395   }
396 
397   @Test
deleteCompanyExceptionTest2()398   public void deleteCompanyExceptionTest2() throws Exception {
399     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
400     mockCompanyService.addException(exception);
401 
402     try {
403       String name = "name3373707";
404       client.deleteCompany(name);
405       Assert.fail("No exception raised");
406     } catch (InvalidArgumentException e) {
407       // Expected exception.
408     }
409   }
410 
411   @Test
listCompaniesTest()412   public void listCompaniesTest() throws Exception {
413     Company responsesElement = Company.newBuilder().build();
414     ListCompaniesResponse expectedResponse =
415         ListCompaniesResponse.newBuilder()
416             .setNextPageToken("")
417             .addAllCompanies(Arrays.asList(responsesElement))
418             .build();
419     mockCompanyService.addResponse(expectedResponse);
420 
421     TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
422 
423     ListCompaniesPagedResponse pagedListResponse = client.listCompanies(parent);
424 
425     List<Company> resources = Lists.newArrayList(pagedListResponse.iterateAll());
426 
427     Assert.assertEquals(1, resources.size());
428     Assert.assertEquals(expectedResponse.getCompaniesList().get(0), resources.get(0));
429 
430     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
431     Assert.assertEquals(1, actualRequests.size());
432     ListCompaniesRequest actualRequest = ((ListCompaniesRequest) actualRequests.get(0));
433 
434     Assert.assertEquals(parent.toString(), actualRequest.getParent());
435     Assert.assertTrue(
436         channelProvider.isHeaderSent(
437             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
438             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
439   }
440 
441   @Test
listCompaniesExceptionTest()442   public void listCompaniesExceptionTest() throws Exception {
443     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
444     mockCompanyService.addException(exception);
445 
446     try {
447       TenantName parent = TenantName.of("[PROJECT]", "[TENANT]");
448       client.listCompanies(parent);
449       Assert.fail("No exception raised");
450     } catch (InvalidArgumentException e) {
451       // Expected exception.
452     }
453   }
454 
455   @Test
listCompaniesTest2()456   public void listCompaniesTest2() throws Exception {
457     Company responsesElement = Company.newBuilder().build();
458     ListCompaniesResponse expectedResponse =
459         ListCompaniesResponse.newBuilder()
460             .setNextPageToken("")
461             .addAllCompanies(Arrays.asList(responsesElement))
462             .build();
463     mockCompanyService.addResponse(expectedResponse);
464 
465     String parent = "parent-995424086";
466 
467     ListCompaniesPagedResponse pagedListResponse = client.listCompanies(parent);
468 
469     List<Company> resources = Lists.newArrayList(pagedListResponse.iterateAll());
470 
471     Assert.assertEquals(1, resources.size());
472     Assert.assertEquals(expectedResponse.getCompaniesList().get(0), resources.get(0));
473 
474     List<AbstractMessage> actualRequests = mockCompanyService.getRequests();
475     Assert.assertEquals(1, actualRequests.size());
476     ListCompaniesRequest actualRequest = ((ListCompaniesRequest) actualRequests.get(0));
477 
478     Assert.assertEquals(parent, actualRequest.getParent());
479     Assert.assertTrue(
480         channelProvider.isHeaderSent(
481             ApiClientHeaderProvider.getDefaultApiClientHeaderKey(),
482             GaxGrpcProperties.getDefaultApiClientHeaderPattern()));
483   }
484 
485   @Test
listCompaniesExceptionTest2()486   public void listCompaniesExceptionTest2() throws Exception {
487     StatusRuntimeException exception = new StatusRuntimeException(io.grpc.Status.INVALID_ARGUMENT);
488     mockCompanyService.addException(exception);
489 
490     try {
491       String parent = "parent-995424086";
492       client.listCompanies(parent);
493       Assert.fail("No exception raised");
494     } catch (InvalidArgumentException e) {
495       // Expected exception.
496     }
497   }
498 }
499