@@ -244,18 +244,45 @@ def test_widget_template_from_file(
244244 assert widget .model_dump (exclude_none = True ) == expected_widget_dict
245245
246246
247- def test_widget_template_with_basic_root ():
247+ def test_widget_template_build_with_basic_root ():
248248 template = WidgetTemplate .from_file ("assets/widgets/basic_root.widget" )
249249
250250 with open ("tests/assets/widgets/basic_root.json" , "r" ) as file :
251251 expected_widget_dict = json .load (file )
252252
253- widget = template .build_basic (
253+ widget = template .build (
254254 {
255255 "name" : "Harry Potter" ,
256256 "bio" : "The boy who lived" ,
257257 },
258258 )
259259
260+ assert isinstance (widget , DynamicWidgetRoot )
261+ assert widget .type == "Basic"
262+ assert widget .model_dump (exclude_none = True ) == expected_widget_dict
263+
264+ widget_item = WidgetItem (
265+ thread_id = "1" , widget = widget , id = "1" , created_at = datetime .now ()
266+ )
267+ assert widget_item .widget .type == "Basic"
268+
269+
270+ def test_widget_template_build_basic_is_deprecated ():
271+ template = WidgetTemplate .from_file ("assets/widgets/basic_root.widget" )
272+
273+ with open ("tests/assets/widgets/basic_root.json" , "r" ) as file :
274+ expected_widget_dict = json .load (file )
275+
276+ with pytest .warns (
277+ DeprecationWarning ,
278+ match = "WidgetTemplate.build_basic is deprecated. Use WidgetTemplate.build instead." ,
279+ ):
280+ widget = template .build_basic (
281+ {
282+ "name" : "Harry Potter" ,
283+ "bio" : "The boy who lived" ,
284+ },
285+ )
286+
260287 assert isinstance (widget , BasicRoot )
261288 assert widget .model_dump (exclude_none = True ) == expected_widget_dict
0 commit comments