def test_list_insights(self): # Setup Expected Response next_page_token = "" insights_element = {} insights = [insights_element] expected_response = { "next_page_token": next_page_token, "insights": insights } expected_response = recommender_service_pb2.ListInsightsResponse( **expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup Request parent = client.insight_type_path("[PROJECT]", "[LOCATION]", "[INSIGHT_TYPE]") paged_list_response = client.list_insights(parent) resources = list(paged_list_response) assert len(resources) == 1 assert expected_response.insights[0] == resources[0] assert len(channel.requests) == 1 expected_request = recommender_service_pb2.ListInsightsRequest( parent=parent) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_mark_recommendation_failed(self): # Setup Expected Response name_2 = "name2-1052831874" description = "description-1724546052" recommender_subtype = "recommenderSubtype-1488504412" etag_2 = "etag2-1293302904" expected_response = { "name": name_2, "description": description, "recommender_subtype": recommender_subtype, "etag": etag_2, } expected_response = recommendation_pb2.Recommendation( **expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup Request name = client.recommendation_path("[PROJECT]", "[LOCATION]", "[RECOMMENDER]", "[RECOMMENDATION]") etag = "etag3123477" response = client.mark_recommendation_failed(name, etag) assert expected_response == response assert len(channel.requests) == 1 expected_request = recommender_service_pb2.MarkRecommendationFailedRequest( name=name, etag=etag) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_mark_insight_accepted(self): # Setup Expected Response name_2 = "name2-1052831874" description = "description-1724546052" insight_subtype = "insightSubtype-1491142701" etag_2 = "etag2-1293302904" expected_response = { "name": name_2, "description": description, "insight_subtype": insight_subtype, "etag": etag_2, } expected_response = insight_pb2.Insight(**expected_response) # Mock the API response channel = ChannelStub(responses=[expected_response]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup Request name = client.insight_path("[PROJECT]", "[LOCATION]", "[INSIGHT_TYPE]", "[INSIGHT]") etag = "etag3123477" response = client.mark_insight_accepted(name, etag) assert expected_response == response assert len(channel.requests) == 1 expected_request = recommender_service_pb2.MarkInsightAcceptedRequest( name=name, etag=etag) actual_request = channel.requests[0][1] assert expected_request == actual_request
def test_list_recommendations_exception(self): channel = ChannelStub(responses=[CustomException()]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup request parent = client.recommender_path("[PROJECT]", "[LOCATION]", "[RECOMMENDER]") paged_list_response = client.list_recommendations(parent) with pytest.raises(CustomException): list(paged_list_response)
def test_get_recommendation_exception(self): # Mock the API response channel = ChannelStub(responses=[CustomException()]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup request name = client.recommendation_path("[PROJECT]", "[LOCATION]", "[RECOMMENDER]", "[RECOMMENDATION]") with pytest.raises(CustomException): client.get_recommendation(name)
def test_mark_insight_accepted_exception(self): # Mock the API response channel = ChannelStub(responses=[CustomException()]) patch = mock.patch("google.api_core.grpc_helpers.create_channel") with patch as create_channel: create_channel.return_value = channel client = recommender_v1beta1.RecommenderClient() # Setup request name = client.insight_path("[PROJECT]", "[LOCATION]", "[INSIGHT_TYPE]", "[INSIGHT]") etag = "etag3123477" with pytest.raises(CustomException): client.mark_insight_accepted(name, etag)