[SATYR PATCH 1/6] tests: refactor some common code
Martin Milata
mmilata at redhat.com
Wed Aug 7 15:53:20 UTC 2013
Signed-off-by: Martin Milata <mmilata at redhat.com>
---
.gitignore | 1 +
tests/python/gdb.py | 15 +++------------
tests/python/java.py | 12 ++----------
tests/python/koops.py | 7 +------
tests/python/metrics.py | 8 +-------
tests/python/python.py | 13 ++-----------
tests/python/test_helpers.py | 11 +++++++++++
7 files changed, 21 insertions(+), 46 deletions(-)
diff --git a/.gitignore b/.gitignore
index ae69aa9..cbcf307 100644
--- a/.gitignore
+++ b/.gitignore
@@ -51,3 +51,4 @@ satyr.1
/tests/testsuite
/tests/testsuite.log
/tests/testsuite.dir
+/tests/python/test_helpers.pyc
diff --git a/tests/python/gdb.py b/tests/python/gdb.py
index fdc61a6..f271fe0 100755
--- a/tests/python/gdb.py
+++ b/tests/python/gdb.py
@@ -1,13 +1,7 @@
#!/usr/bin/env python
import unittest
-from test_helpers import BindingsTestCase, load_input_contents
-
-try:
- import _satyr as satyr
-except ImportError:
- import satyr
-
+from test_helpers import *
contents = load_input_contents('../gdb_stacktraces/rhbz-803600')
threads_expected = 2
@@ -24,14 +18,11 @@ class TestGdbStacktrace(BindingsTestCase):
def setUp(self):
self.trace = satyr.GdbStacktrace(contents)
- def frame_count(self, trace):
- return sum(map(lambda x: len(x.frames), trace.threads))
-
def test_correct_thread_count(self):
self.assertEqual(len(self.trace.threads), threads_expected)
def test_correct_frame_count(self):
- self.assertEqual(self.frame_count(self.trace), frames_expected)
+ self.assertEqual(frame_count(self.trace), frames_expected)
def test_dup(self):
dup = self.trace.dup()
@@ -52,7 +43,7 @@ class TestGdbStacktrace(BindingsTestCase):
def test_normalize(self):
dup = self.trace.dup()
dup.normalize()
- self.assertNotEqual(self.frame_count(dup), self.frame_count(self.trace))
+ self.assertNotEqual(frame_count(dup), frame_count(self.trace))
def test_str(self):
out = str(self.trace)
diff --git a/tests/python/java.py b/tests/python/java.py
index eaa3d48..0bed791 100755
--- a/tests/python/java.py
+++ b/tests/python/java.py
@@ -1,12 +1,7 @@
#!/usr/bin/env python
import unittest
-from test_helpers import BindingsTestCase, load_input_contents
-
-try:
- import _satyr as satyr
-except ImportError:
- import satyr
+from test_helpers import *
contents = load_input_contents('../java_stacktraces/java-02')
threads_expected = 1
@@ -25,14 +20,11 @@ class TestJavaStacktrace(BindingsTestCase):
def setUp(self):
self.trace = satyr.JavaStacktrace(contents)
- def frame_count(self, trace):
- return sum(map(lambda x: len(x.frames), trace.threads))
-
def test_correct_thread_count(self):
self.assertEqual(len(self.trace.threads), threads_expected)
def test_correct_frame_count(self):
- self.assertEqual(self.frame_count(self.trace), frames_expected)
+ self.assertEqual(frame_count(self.trace), frames_expected)
def test_dup(self):
dup = self.trace.dup()
diff --git a/tests/python/koops.py b/tests/python/koops.py
index 4922c61..241ad21 100755
--- a/tests/python/koops.py
+++ b/tests/python/koops.py
@@ -1,12 +1,7 @@
#!/usr/bin/env python
import unittest
-from test_helpers import BindingsTestCase, load_input_contents
-
-try:
- import _satyr as satyr
-except ImportError:
- import satyr
+from test_helpers import *
contents = load_input_contents('../kerneloopses/rhbz-827868')
frames_expected = 32
diff --git a/tests/python/metrics.py b/tests/python/metrics.py
index ea79d10..1230ef6 100755
--- a/tests/python/metrics.py
+++ b/tests/python/metrics.py
@@ -1,13 +1,7 @@
#!/usr/bin/env python
import unittest
-
-from test_helpers import load_input_contents
-
-try:
- import _satyr as satyr
-except ImportError:
- import satyr
+from test_helpers import *
class TestDistances(unittest.TestCase):
def setUp(self):
diff --git a/tests/python/python.py b/tests/python/python.py
index 1fcd49d..9529536 100755
--- a/tests/python/python.py
+++ b/tests/python/python.py
@@ -1,13 +1,7 @@
#!/usr/bin/env python
import unittest
-
-from test_helpers import BindingsTestCase, load_input_contents
-
-try:
- import _satyr as satyr
-except ImportError:
- import satyr
+from test_helpers import *
path = '../python_stacktraces/python-01'
contents = load_input_contents(path)
@@ -24,11 +18,8 @@ class TestPythonStacktrace(BindingsTestCase):
def setUp(self):
self.trace = satyr.PythonStacktrace(contents)
- def frame_count(self, trace):
- return len(trace.frames)
-
def test_correct_frame_count(self):
- self.assertEqual(self.frame_count(self.trace), frames_expected)
+ self.assertEqual(frame_count(self.trace), frames_expected)
def test_dup(self):
dup = self.trace.dup()
diff --git a/tests/python/test_helpers.py b/tests/python/test_helpers.py
index ba023a0..d99b53a 100644
--- a/tests/python/test_helpers.py
+++ b/tests/python/test_helpers.py
@@ -1,6 +1,11 @@
import os
import unittest
+try:
+ import _satyr as satyr
+except ImportError:
+ import satyr
+
class BindingsTestCase(unittest.TestCase):
def assertGetSetCorrect(self, obj, attr, orig_val, new_val):
'''
@@ -18,6 +23,12 @@ def load_input_contents(path):
with file(path) as f:
return f.read()
+def frame_count(trace):
+ if hasattr(trace, 'frames'):
+ return len(trace.frames)
+ else:
+ return sum(map(lambda x: len(x.frames), trace.threads))
+
if __name__ == '__main__':
import sys
sys.exit('This module is not meant to be run directly')
--
1.8.3.1
More information about the Crash-catcher
mailing list