diff --git a/wally/suits/itest.py b/wally/suits/itest.py
index c3848a7..db5dc36 100644
--- a/wally/suits/itest.py
+++ b/wally/suits/itest.py
@@ -88,7 +88,6 @@
     def get_remote_for_script(self, script):
         return os.path.join(self.remote_dir, script.rpartition('/')[2])
 
-
     def pre_run(self):
         copy_paths(self.node.connection, {self.root: self.remote_dir})
         cmd = self.get_remote_for_script(self.pre_run_script)
@@ -126,6 +125,15 @@
     run_script = os.path.join(root, "run.sh")
 
 
+    @classmethod
+    def format_for_console(cls, data):
+        tab = texttable.Texttable(max_width=120)
+        tab.set_deco(tab.HEADER | tab.VLINES | tab.BORDER)
+        tab.header(["TpmC"])
+        tab.add_row([data['res']['TpmC']])
+        return tab.draw()
+
+
 class MysqlTest(TwoScriptTest):
     root = os.path.dirname(mysql.__file__)
     pre_run_script = os.path.join(root, "prepare.sh")
diff --git a/wally/suits/postgres/prepare.sh b/wally/suits/postgres/prepare.sh
index e7ca3bc..bd908a4 100755
--- a/wally/suits/postgres/prepare.sh
+++ b/wally/suits/postgres/prepare.sh
@@ -16,4 +16,4 @@
 
 service postgresql restart
 
-exit 0
\ No newline at end of file
+exit 0
