Close #19156: add tests and fix for Enum helper edge cases.  Patch from CliffM.
diff --git a/Lib/enum.py b/Lib/enum.py
index 921d00c..7ca8503 100644
--- a/Lib/enum.py
+++ b/Lib/enum.py
@@ -17,14 +17,16 @@
     """Returns True if a __dunder__ name, False otherwise."""
     return (name[:2] == name[-2:] == '__' and
             name[2:3] != '_' and
-            name[-3:-2] != '_')
+            name[-3:-2] != '_' and
+            len(name) > 4)
 
 
 def _is_sunder(name):
     """Returns True if a _sunder_ name, False otherwise."""
     return (name[0] == name[-1] == '_' and
             name[1:2] != '_' and
-            name[-2:-1] != '_')
+            name[-2:-1] != '_' and
+            len(name) > 2)
 
 
 def _make_class_unpicklable(cls):