diff --git a/tests/heredoctest.py b/tests/heredoctest.py
--- a/tests/heredoctest.py
+++ b/tests/heredoctest.py
@@ -2,8 +2,12 @@ import doctest, tempfile, os, sys
 
 if __name__ == "__main__":
     fd, name = tempfile.mkstemp(suffix='hg-tst')
-    os.write(fd, sys.stdin.read())
-    os.close(fd)
-    failures, _ = doctest.testfile(name, module_relative=False)
-    if failures:
-        sys.exit(1)
+
+    try:
+        os.write(fd, sys.stdin.read())
+        os.close(fd)
+        failures, _ = doctest.testfile(name, module_relative=False)
+        if failures:
+            sys.exit(1)
+    finally:
+        os.remove(name)