bpo-39638: Keep ASDL signatures in the AST nodes (GH-18515)

diff --git a/Lib/test/test_ast.py b/Lib/test/test_ast.py
index 0058e93..66f8384 100644
--- a/Lib/test/test_ast.py
+++ b/Lib/test/test_ast.py
@@ -636,6 +636,16 @@
         attr_b = tree.body[0].decorator_list[0].value
         self.assertEqual(attr_b.end_col_offset, 4)
 
+    def test_ast_asdl_signature(self):
+        self.assertEqual(ast.withitem.__doc__, "withitem(expr context_expr, expr? optional_vars)")
+        self.assertEqual(ast.GtE.__doc__, "GtE")
+        self.assertEqual(ast.Name.__doc__, "Name(identifier id, expr_context ctx)")
+        self.assertEqual(ast.cmpop.__doc__, "cmpop = Eq | NotEq | Lt | LtE | Gt | GtE | Is | IsNot | In | NotIn")
+        expressions = [f"     | {node.__doc__}" for node in ast.expr.__subclasses__()]
+        expressions[0] = f"expr = {ast.expr.__subclasses__()[0].__doc__}"
+        self.assertCountEqual(ast.expr.__doc__.split("\n"), expressions)
+
+
 class ASTHelpers_Test(unittest.TestCase):
     maxDiff = None