Issue #6697: catch _PyUnicode_AsString() errors in getattr() and setattr()
builtin functions.
diff --git a/Lib/test/test_builtin.py b/Lib/test/test_builtin.py
index b4bdf11..5d24000 100644
--- a/Lib/test/test_builtin.py
+++ b/Lib/test/test_builtin.py
@@ -479,6 +479,8 @@
         self.assertRaises(TypeError, getattr, sys, 1, "foo")
         self.assertRaises(TypeError, getattr)
         self.assertRaises(AttributeError, getattr, sys, chr(sys.maxunicode))
+        # unicode surrogates are not encodable to the default encoding (utf8)
+        self.assertRaises(AttributeError, getattr, 1, "\uDAD1\uD51E")
 
     def test_hasattr(self):
         import sys