@@ -1110,6 +1110,42 @@ def test_info_field_list_piped_type(app):
11101110 ** {"py:module" : "example" , "py:class" : "Class" })
11111111
11121112
1113+ def test_info_field_list_Literal (app ):
1114+ text = (".. py:module:: example\n "
1115+ ".. py:class:: Class\n "
1116+ "\n "
1117+ " :param age: blah blah\n "
1118+ " :type age: Literal['foo', 'bar', 'baz']\n " )
1119+ doctree = restructuredtext .parse (app , text )
1120+
1121+ assert_node (doctree ,
1122+ (nodes .target ,
1123+ addnodes .index ,
1124+ addnodes .index ,
1125+ [desc , ([desc_signature , ([desc_annotation , ("class" , desc_sig_space )],
1126+ [desc_addname , "example." ],
1127+ [desc_name , "Class" ])],
1128+ [desc_content , nodes .field_list , nodes .field , (nodes .field_name ,
1129+ nodes .field_body )])]))
1130+ assert_node (doctree [3 ][1 ][0 ][0 ][1 ],
1131+ ([nodes .paragraph , ([addnodes .literal_strong , "age" ],
1132+ " (" ,
1133+ [pending_xref , addnodes .literal_emphasis , "Literal" ],
1134+ [addnodes .literal_emphasis , "[" ],
1135+ [addnodes .literal_emphasis , "'foo'" ],
1136+ [addnodes .literal_emphasis , ", " ],
1137+ [addnodes .literal_emphasis , "'bar'" ],
1138+ [addnodes .literal_emphasis , ", " ],
1139+ [addnodes .literal_emphasis , "'baz'" ],
1140+ [addnodes .literal_emphasis , "]" ],
1141+ ")" ,
1142+ " -- " ,
1143+ "blah blah" )],))
1144+ assert_node (doctree [3 ][1 ][0 ][0 ][1 ][0 ][2 ], pending_xref ,
1145+ refdomain = "py" , reftype = "class" , reftarget = "Literal" ,
1146+ ** {"py:module" : "example" , "py:class" : "Class" })
1147+
1148+
11131149def test_info_field_list_var (app ):
11141150 text = (".. py:class:: Class\n "
11151151 "\n "
0 commit comments