|
| 1 | +# Copyright 2025 Google LLC |
| 2 | +# |
| 3 | +# Licensed under the Apache License, Version 2.0 (the "License"); |
| 4 | +# you may not use this file except in compliance with the License. |
| 5 | +# You may obtain a copy of the License at |
| 6 | +# |
| 7 | +# http://www.apache.org/licenses/LICENSE-2.0 |
| 8 | +# |
| 9 | +# Unless required by applicable law or agreed to in writing, software |
| 10 | +# distributed under the License is distributed on an "AS IS" BASIS, |
| 11 | +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| 12 | +# See the License for the specific language governing permissions and |
| 13 | +# limitations under the License. |
| 14 | + |
1 | 15 | from typing import Literal
|
2 | 16 |
|
3 | 17 | from google.adk.agents.agent_config import AgentConfig
|
@@ -115,9 +129,12 @@ class MyCustomAgentConfig(BaseAgentConfig):
|
115 | 129 |
|
116 | 130 | config = AgentConfig.model_validate(config_data)
|
117 | 131 |
|
118 |
| - assert isinstance(config.root, BaseAgentConfig) |
| 132 | + # pylint: disable=unidiomatic-typecheck Needs exact class matching. |
| 133 | + assert type(config.root) is BaseAgentConfig |
119 | 134 | assert config.root.agent_class == "mylib.agents.MyCustomAgent"
|
120 | 135 | assert config.root.model_extra == {"other_field": "other value"}
|
121 | 136 |
|
122 |
| - my_custom_config = config.root.to_agent_config(MyCustomAgentConfig) |
| 137 | + my_custom_config = MyCustomAgentConfig.model_validate( |
| 138 | + config.root.model_dump() |
| 139 | + ) |
123 | 140 | assert my_custom_config.other_field == "other value"
|
0 commit comments