Skip to content

Commit

Permalink
Add builtin functions/methods __self__ test
Browse files Browse the repository at this point in the history
  • Loading branch information
adorilson committed Dec 29, 2023
1 parent c178bdb commit e0a2693
Showing 1 changed file with 20 additions and 0 deletions.
20 changes: 20 additions & 0 deletions Lib/test/test_funcattrs.py
Original file line number Diff line number Diff line change
Expand Up @@ -473,6 +473,26 @@ def test_builtin__qualname__(self):
self.assertEqual([1, 2, 3].append.__qualname__, 'list.append')
self.assertEqual({'foo': 'bar'}.pop.__qualname__, 'dict.pop')

def test_builtin__self__(self):
import time
import builtins

# builtin function:
self.assertEqual(len.__self__, builtins)
self.assertEqual(time.sleep.__self__, time)

# builtin classmethod:
self.assertEqual(dict.fromkeys.__self__, dict)
self.assertEqual(float.__getformat__.__self__, float)

# builtin staticmethod:
self.assertEqual(str.maketrans.__self__, None)
self.assertEqual(bytes.maketrans.__self__, None)

# builtin bound instance method:
self.assertEqual([1, 2, 3].append.__self__, [1, 2, 3])
self.assertEqual({'foo': 'bar'}.pop.__self__, {'foo': 'bar'})


if __name__ == "__main__":
unittest.main()

0 comments on commit e0a2693

Please sign in to comment.