Tests: clean-up test utility functions
authorAntoine Busque <abusque@efficios.com>
Fri, 4 Mar 2016 22:50:25 +0000 (17:50 -0500)
committerAntoine Busque <abusque@efficios.com>
Fri, 4 Mar 2016 22:50:25 +0000 (17:50 -0500)
Signed-off-by: Antoine Busque <abusque@efficios.com>
tests/analysis_test.py
tests/test_cputop.py
tests/test_io.py
tests/test_irq.py

index aefef9827e202155b5173b8085cc657493bbb370..53c5b156bb28eac91c9b0db87914013995c6554e 100644 (file)
@@ -55,8 +55,9 @@ class AnalysisTest(unittest.TestCase):
 
         return result
 
-    def get_expected_output(self, filename):
-        with open(self.data_path + filename, 'r') as expected_file:
+    def get_expected_output(self, test_name):
+        expected_path = os.path.join(self.data_path, test_name + '.txt')
+        with open(expected_path, 'r') as expected_file:
             return expected_file.read()
 
     def get_cmd_output(self, exec_name, options=''):
@@ -66,15 +67,15 @@ class AnalysisTest(unittest.TestCase):
 
         return subprocess.getoutput(cmd)
 
-    def get_output(self, name, output):
-        out = open(os.path.join(self.trace_writer.trace_root, name), "w")
-        out.write(output)
-        out.close()
-        self.rm_trace = False
+    def save_test_result(self, result, test_name):
+        result_path = os.path.join(self.trace_writer.trace_root, test_name)
+        with open(result_path, 'w') as result_file:
+            result_file.write(result)
+            self.rm_trace = False
 
-    def diff(self, name, result, expected):
+    def _assertMultiLineEqual(self, result, expected, test_name):
         try:
             self.assertMultiLineEqual(result, expected)
         except AssertionError:
-            self.get_output(name, result)
+            self.save_test_result(result, test_name)
             raise
index 50a4aa43b350890b043fc05512e346d5859c21b6..93943bbc42ed51b9dd7702e168c741d100873948 100644 (file)
@@ -41,7 +41,8 @@ class CpuTest(AnalysisTest):
         self.trace_writer.flush()
 
     def test_cputop(self):
-        expected = self.get_expected_output('cputop.txt')
+        test_name = 'cputop'
+        expected = self.get_expected_output(test_name)
         result = self.get_cmd_output('lttng-cputop')
 
-        self.diff("cputop", result, expected)
+        self._assertMultiLineEqual(result, expected, test_name)
index 6dd764e9c8248ca47b6afaea28ae4f0041411aa8..0ab5755c9f03e26f1e21ebc4b436fc76f4c93527 100644 (file)
@@ -65,13 +65,15 @@ class IoTest(AnalysisTest):
         self.trace_writer.flush()
 
     def test_iousagetop(self):
-        expected = self.get_expected_output('iousagetop.txt')
+        test_name = 'iousagetop'
+        expected = self.get_expected_output(test_name)
         result = self.get_cmd_output('lttng-iousagetop')
 
-        self.diff("iousagetop", result, expected)
+        self._assertMultiLineEqual(result, expected, test_name)
 
     def test_iolatencytop(self):
-        expected = self.get_expected_output('iolatencytop.txt')
+        test_name = 'iolatencytop'
+        expected = self.get_expected_output(test_name)
         result = self.get_cmd_output('lttng-iolatencytop')
 
-        self.diff("iolatencytop", result, expected)
+        self._assertMultiLineEqual(result, expected, test_name)
index b8c244401d56a2af6694420da66aaf89a563649a..6a0856c644e5d2506854eebd006026af774ff3bd 100644 (file)
@@ -75,13 +75,15 @@ class IrqTest(AnalysisTest):
         self.trace_writer.flush()
 
     def test_irqstats(self):
-        expected = self.get_expected_output('irqstats.txt')
+        test_name = 'irqstats'
+        expected = self.get_expected_output(test_name)
         result = self.get_cmd_output('lttng-irqstats')
 
-        self.diff("irqstats", result, expected)
+        self._assertMultiLineEqual(result, expected, test_name)
 
     def test_irqlog(self):
-        expected = self.get_expected_output('irqlog.txt')
+        test_name = 'irqlog'
+        expected = self.get_expected_output(test_name)
         result = self.get_cmd_output('lttng-irqlog')
 
-        self.diff("irqlog", result, expected)
+        self._assertMultiLineEqual(result, expected, test_name)
This page took 0.027897 seconds and 5 git commands to generate.