diff --git a/test/lib/test_suite.py b/test/lib/test_suite.py
index 3a2c479ef9815911e6ff49ed5a9b5e05dd705b48..e1fa40576076f6ea06682469bf01d067d835c9b8 100644
--- a/test/lib/test_suite.py
+++ b/test/lib/test_suite.py
@@ -131,12 +131,12 @@ class Test:
       if not self.is_executed_ok:
         self.print_diagnostics()
         where = ": test execution aborted, reason '{0}'".format(diagnostics)
-      elif not self.is_valgrind_clean:
-        print "Test failed! Valgrind reports errors" \
-	      " (see {0}/valgrind.log)".format(self.args.vardir)
-      else:
+      elif not self.is_equal_result:
         self.print_unidiff()
         where = ": wrong test output"
+      if not self.is_valgrind_clean:
+        print "Test failed! Valgrind reports errors" \
+	      " (see {0}/valgrind.log)".format(self.args.vardir)
       if not self.suite_ini["is_force"]:
         raise TestRunException("Failed to run test " + self.name + where)