Fix problematic override _exc_info_to_string
authorDaniel Malea <daniel.malea@intel.com>
Tue, 30 Jul 2013 21:28:32 +0000 (21:28 +0000)
committerDaniel Malea <daniel.malea@intel.com>
Tue, 30 Jul 2013 21:28:32 +0000 (21:28 +0000)
- pass through to base-class implementation when raised exception is not from an LLDBTest
- should make the test suite errors a little easier to root-cause

llvm-svn: 187450

lldb/test/dotest.py

index 96721d0..3b6d871 100755 (executable)
@@ -1427,10 +1427,12 @@ for ia in range(len(archs) if iterArchs else 1):
             def _exc_info_to_string(self, err, test):
                 """Overrides superclass TestResult's method in order to append
                 our test config info string to the exception info string."""
-                modified_exc_string = '%sConfig=%s-%s' % (super(LLDBTestResult, self)._exc_info_to_string(err, test),
-                                                          test.getArchitecture(),
-                                                          test.getCompiler())
-                return modified_exc_string
+                if hasattr(test, "getArchitecture") and hasattr(test, "getCompiler"):
+                    return '%sConfig=%s-%s' % (super(LLDBTestResult, self)._exc_info_to_string(err, test),
+                                                              test.getArchitecture(),
+                                                              test.getCompiler())
+                else:
+                    return super(LLDBTestResult, self)._exc_info_to_string(err, test)
 
             def getDescription(self, test):
                 doc_first_line = test.shortDescription()