@@ -45,6 +45,45 @@ def test_reference_google_wellknown_types_non_wrappers(
4545 ), f"{ expected_import } not found in { imports } "
4646
4747
48+ @pytest .mark .parametrize (
49+ ["google_type" , "expected_name" , "expected_import" ],
50+ [
51+ (
52+ ".google.protobuf.Empty" ,
53+ '"betterproto_lib_pydantic_google_protobuf.Empty"' ,
54+ "import betterproto.lib.pydantic.google.protobuf as betterproto_lib_pydantic_google_protobuf" ,
55+ ),
56+ (
57+ ".google.protobuf.Struct" ,
58+ '"betterproto_lib_pydantic_google_protobuf.Struct"' ,
59+ "import betterproto.lib.pydantic.google.protobuf as betterproto_lib_pydantic_google_protobuf" ,
60+ ),
61+ (
62+ ".google.protobuf.ListValue" ,
63+ '"betterproto_lib_pydantic_google_protobuf.ListValue"' ,
64+ "import betterproto.lib.pydantic.google.protobuf as betterproto_lib_pydantic_google_protobuf" ,
65+ ),
66+ (
67+ ".google.protobuf.Value" ,
68+ '"betterproto_lib_pydantic_google_protobuf.Value"' ,
69+ "import betterproto.lib.pydantic.google.protobuf as betterproto_lib_pydantic_google_protobuf" ,
70+ ),
71+ ],
72+ )
73+ def test_reference_google_wellknown_types_non_wrappers_pydantic (
74+ google_type : str , expected_name : str , expected_import : str
75+ ):
76+ imports = set ()
77+ name = get_type_reference (
78+ package = "" , imports = imports , source_type = google_type , pydantic = True
79+ )
80+
81+ assert name == expected_name
82+ assert imports .__contains__ (
83+ expected_import
84+ ), f"{ expected_import } not found in { imports } "
85+
86+
4887@pytest .mark .parametrize (
4988 ["google_type" , "expected_name" ],
5089 [
0 commit comments