lawrence_danna created this revision.
lawrence_danna added reviewers: JDevlieghere, jasonmolenda.
Herald added a project: LLDB.

`dotest -f` does not work on Python3.

The name types.UnboundMethodType was an alias for types.MethodType in
2.7, but it does not exist in python3.   MethodType works in both.

Also the actual type returned from SomeClass.some_method in python3
will be types.Function, not MethodType.


Repository:
  rG LLVM Github Monorepo

https://reviews.llvm.org/D67791

Files:
  lldb/third_party/Python/module/unittest2/unittest2/loader.py


Index: lldb/third_party/Python/module/unittest2/unittest2/loader.py
===================================================================
--- lldb/third_party/Python/module/unittest2/unittest2/loader.py
+++ lldb/third_party/Python/module/unittest2/unittest2/loader.py
@@ -117,7 +117,7 @@
             return self.loadTestsFromModule(obj)
         elif isinstance(obj, type) and issubclass(obj, unittest.TestCase):
             return self.loadTestsFromTestCase(obj)
-        elif (isinstance(obj, types.UnboundMethodType) and
+        elif (isinstance(obj, (types.MethodType, types.FunctionType)) and
               isinstance(parent, type) and
               issubclass(parent, case.TestCase)):
             return self.suiteClass([parent(obj.__name__)])


Index: lldb/third_party/Python/module/unittest2/unittest2/loader.py
===================================================================
--- lldb/third_party/Python/module/unittest2/unittest2/loader.py
+++ lldb/third_party/Python/module/unittest2/unittest2/loader.py
@@ -117,7 +117,7 @@
             return self.loadTestsFromModule(obj)
         elif isinstance(obj, type) and issubclass(obj, unittest.TestCase):
             return self.loadTestsFromTestCase(obj)
-        elif (isinstance(obj, types.UnboundMethodType) and
+        elif (isinstance(obj, (types.MethodType, types.FunctionType)) and
               isinstance(parent, type) and
               issubclass(parent, case.TestCase)):
             return self.suiteClass([parent(obj.__name__)])
_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
  • [Lldb-commits] [PATCH] ... Lawrence D'Anna via Phabricator via lldb-commits

Reply via email to