From e021d6909436c6baac2dc7c9065340862a9b9aa2 Mon Sep 17 00:00:00 2001 From: Jonas Devlieghere Date: Fri, 20 Sep 2019 23:41:29 +0000 Subject: [PATCH] dotest.py: bugfix: test filters with -f do not work on Python3 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. Patch by: Lawrence D'Anna Differential revision: https://reviews.llvm.org/D67791 llvm-svn: 372441 --- lldb/third_party/Python/module/unittest2/unittest2/loader.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lldb/third_party/Python/module/unittest2/unittest2/loader.py b/lldb/third_party/Python/module/unittest2/unittest2/loader.py index 996dd76..87edddc 100644 --- a/lldb/third_party/Python/module/unittest2/unittest2/loader.py +++ b/lldb/third_party/Python/module/unittest2/unittest2/loader.py @@ -117,7 +117,7 @@ class TestLoader(unittest.TestLoader): 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__)]) -- 2.7.4