async def test_detect_intent_flattened_async(): client = SessionsAsyncClient( credentials=credentials.AnonymousCredentials(), ) # Mock the actual call within the gRPC stub, and fake the request. with mock.patch.object(type(client.transport.detect_intent), "__call__") as call: # Designate an appropriate return value for the call. call.return_value = gcd_session.DetectIntentResponse() call.return_value = grpc_helpers_async.FakeUnaryUnaryCall( gcd_session.DetectIntentResponse()) # Call the method with a truthy value for each flattened field, # using the keyword arguments to the method. response = await client.detect_intent( session="session_value", query_input=gcd_session.QueryInput( audio_config=audio_config.InputAudioConfig( audio_encoding=audio_config.AudioEncoding. AUDIO_ENCODING_LINEAR_16)), ) # Establish that the underlying call was made with the expected # request object values. assert len(call.mock_calls) _, args, _ = call.mock_calls[0] assert args[0].session == "session_value" assert args[0].query_input == gcd_session.QueryInput( audio_config=audio_config.InputAudioConfig( audio_encoding=audio_config.AudioEncoding. AUDIO_ENCODING_LINEAR_16))
def test_detect_intent_flattened_error(): client = SessionsClient(credentials=credentials.AnonymousCredentials(), ) # Attempting to call a method with both a request object and flattened # fields is an error. with pytest.raises(ValueError): client.detect_intent( gcd_session.DetectIntentRequest(), session="session_value", query_input=gcd_session.QueryInput( audio_config=audio_config.InputAudioConfig( audio_encoding=audio_config.AudioEncoding. AUDIO_ENCODING_LINEAR_16)), )