diff --git a/samples/snippets/set_agent.py b/samples/snippets/set_agent.py new file mode 100644 index 000000000..f1b993d15 --- /dev/null +++ b/samples/snippets/set_agent.py @@ -0,0 +1,39 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +# [START dialogflow_set_agent_sample] + +from google.cloud.dialogflow_v2 import Agent +from google.cloud.dialogflow_v2 import AgentsClient + + +def set_agent(project_id, display_name): + + agents_client = AgentsClient() + + parent = agents_client.common_project_path(project_id) + + agent = Agent( + parent=parent, + display_name=display_name, + default_language_code="en", + time_zone="America/Los_Angeles", + ) + + response = agents_client.set_agent(request={"agent": agent}) + + return response + + +# [END dialogflow_set_agent_sample] diff --git a/samples/snippets/set_agent_test.py b/samples/snippets/set_agent_test.py new file mode 100644 index 000000000..98b0eeb7f --- /dev/null +++ b/samples/snippets/set_agent_test.py @@ -0,0 +1,31 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +import os + +from google.api_core.exceptions import InvalidArgument + +import pytest + +from set_agent import set_agent + +PROJECT_ID = os.getenv("GOOGLE_CLOUD_PROJECT") + + +# We cannot test setAgent because Dialogflow ES can only have one agent +# and if we create a agent it will delete the exisitng testing agent and +# would cause all tests to fail +def test_set_agent(): + with pytest.raises(InvalidArgument): + set_agent(PROJECT_ID, "")