[SATYR PATCH 1/6] tests: refactor some common code
Michal Toman
mtoman at redhat.com
Thu Aug 8 11:39:00 UTC 2013
Looks good, pushed.
On 07.08.2013 17:53, Martin Milata wrote:
> 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')
>
More information about the Crash-catcher
mailing list