diff --git a/modules/base/tests/test_table.py b/modules/base/tests/test_table.py
index e18e3092f3c149781b430d1a82196b6c7774bfcf..4ee2c8b67b90b828067d46c198e504b9b4590926 100644
--- a/modules/base/tests/test_table.py
+++ b/modules/base/tests/test_table.py
@@ -48,6 +48,19 @@ except ImportError:
   HAS_PIL=False
   print "Could not find python imagine library: ignoring some table class unit tests"
 
+# setting up an OST LogSink to capture error messages
+class _FetchLog(ost.LogSink):
+  def __init__(self):
+    ost.LogSink.__init__(self)
+    self.messages = dict()
+
+  def LogMessage(self, message, severity):
+    levels=['ERROR', 'WARNING', 'INFO', 'VERBOSE', 'DEBUG', 'TRACE']
+    level=levels[severity]
+    if not level in self.messages.keys():
+      self.messages[level] = list()
+    self.messages[level].append(message.strip())
+  
 class TestTable(unittest.TestCase):
 
   def tearDown(self):
@@ -1423,6 +1436,9 @@ class TestTable(unittest.TestCase):
     self.assertAlmostEquals(auc, auc_ref)
 
   def testCalcMCC(self):
+    log = _FetchLog()
+    ost.PushLogSink(log)
+
     tab = Table(['score', 'rmsd', 'class_rmsd', 'class_score', 'class_wrong'], 'ffbbb',
                 score=      [2.64, 1.11, 2.17, 0.45,0.15,0.85, 1.13, 2.90, 0.50, 1.03, 1.46, 2.83, 1.15, 2.04, 0.67, 1.27, 2.22, 1.90, 0.68, 0.36,1.04, 2.46, 0.91,0.60],
                 rmsd=[9.58,1.61,7.48,0.29,1.68,3.52,3.34,8.17,4.31,2.85,6.28,8.78,0.41,6.29,4.89,7.30,4.26,3.51,3.38,0.04,2.21,0.24,7.58,8.40],
@@ -1442,7 +1458,8 @@ class TestTable(unittest.TestCase):
     self.assertAlmostEquals(mcc, -0.1490711984)
     mcc = tab.ComputeMCC(score_col='class_wrong', class_col='class_rmsd')
     self.assertEquals(mcc,None)
-    
+    self.assertEquals(log.messages['WARNING'][0],
+    'Could not compute MCC: MCC is not defined since factor (tp + fp) is zero')
 
   def testCalcMCCPreclassified(self):
     tab = Table(['reference', 'prediction1', 'prediction2'],'bbb',