#10869: do not visit root node twice in ast.increment_lineno().
diff --git a/Lib/test/test_ast.py b/Lib/test/test_ast.py
index 34456bc..499facd 100644
--- a/Lib/test/test_ast.py
+++ b/Lib/test/test_ast.py
@@ -264,6 +264,13 @@
             'op=Add(), right=Num(n=1, lineno=4, col_offset=4), lineno=4, '
             'col_offset=0))'
         )
+        # issue10869: do not increment lineno of root twice
+        self.assertEqual(ast.increment_lineno(src.body, n=3), src.body)
+        self.assertEqual(ast.dump(src, include_attributes=True),
+            'Expression(body=BinOp(left=Num(n=1, lineno=4, col_offset=0), '
+            'op=Add(), right=Num(n=1, lineno=4, col_offset=4), lineno=4, '
+            'col_offset=0))'
+        )
 
     def test_iter_fields(self):
         node = ast.parse('foo()', mode='eval')