def test_search_google_ads_fields_flattened_error(): client = GoogleAdsFieldServiceClient( credentials=ga_credentials.AnonymousCredentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): client.search_google_ads_fields( google_ads_field_service.SearchGoogleAdsFieldsRequest(), query='query_value', )
def test_search_google_ads_fields( transport: str = 'grpc', request_type=google_ads_field_service.SearchGoogleAdsFieldsRequest): client = GoogleAdsFieldServiceClient( credentials=ga_credentials.AnonymousCredentials(), transport=transport, ) # Everything is optional in proto3 as far as the runtime is concerned, # and we are mocking out the actual API, so just send an empty request. request = request_type() # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object(type(client.transport.search_google_ads_fields), '__call__') as call: # Designate an appropriate return value for the call. call.return_value = google_ads_field_service.SearchGoogleAdsFieldsResponse( next_page_token='next_page_token_value', total_results_count=2077, ) response = client.search_google_ads_fields(request) # Establish that the underlying gRPC stub method was called. assert len(call.mock_calls) == 1 _, args, _ = call.mock_calls[0] assert args[ 0] == google_ads_field_service.SearchGoogleAdsFieldsRequest() # Establish that the response is the type that we expect. assert isinstance(response, pagers.SearchGoogleAdsFieldsPager) assert response.next_page_token == 'next_page_token_value' assert response.total_results_count == 2077
def test_search_google_ads_fields_flattened(): client = GoogleAdsFieldServiceClient( credentials=ga_credentials.AnonymousCredentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object(type(client.transport.search_google_ads_fields), '__call__') as call: # Designate an appropriate return value for the call. call.return_value = google_ads_field_service.SearchGoogleAdsFieldsResponse( ) # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. client.search_google_ads_fields(query='query_value', ) # Establish that the underlying call was made with the expected # request object values. assert len(call.mock_calls) == 1 _, args, _ = call.mock_calls[0] assert args[0].query == 'query_value'
def test_search_google_ads_fields_pager(): client = GoogleAdsFieldServiceClient( credentials=ga_credentials.AnonymousCredentials, ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object(type(client.transport.search_google_ads_fields), '__call__') as call: # Set the response to a series of pages. call.side_effect = ( google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[ google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), ], next_page_token='abc', ), google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[], next_page_token='def', ), google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[ google_ads_field.GoogleAdsField(), ], next_page_token='ghi', ), google_ads_field_service.SearchGoogleAdsFieldsResponse(results=[ google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), ], ), RuntimeError, ) metadata = () pager = client.search_google_ads_fields(request={}) assert pager._metadata == metadata results = [i for i in pager] assert len(results) == 6 assert all( isinstance(i, google_ads_field.GoogleAdsField) for i in results)
def test_search_google_ads_fields_pages(): client = GoogleAdsFieldServiceClient( credentials=ga_credentials.AnonymousCredentials, ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object(type(client.transport.search_google_ads_fields), '__call__') as call: # Set the response to a series of pages. call.side_effect = ( google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[ google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), ], next_page_token='abc', ), google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[], next_page_token='def', ), google_ads_field_service.SearchGoogleAdsFieldsResponse( results=[ google_ads_field.GoogleAdsField(), ], next_page_token='ghi', ), google_ads_field_service.SearchGoogleAdsFieldsResponse(results=[ google_ads_field.GoogleAdsField(), google_ads_field.GoogleAdsField(), ], ), RuntimeError, ) pages = list(client.search_google_ads_fields(request={}).pages) for page_, token in zip(pages, ['abc', 'def', 'ghi', '']): assert page_.raw_page.next_page_token == token