diff --git a/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp b/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
index 4325fcb625287870582479e01dff59d3df1116c6..288d897dd37f463fc7ae02aae887df9a12aa31dc 100644
--- a/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
+++ b/Framework/PythonInterface/mantid/api/src/Exports/MatrixWorkspace.cpp
@@ -96,8 +96,8 @@ void setMonitorWorkspace(MatrixWorkspace &self,
 * 
 *@return weak pointer to monitor workspace used by python
 */
-boost::weak_ptr<MatrixWorkspace> getMonitorWorkspace(MatrixWorkspace &self) {
-	return boost::weak_ptr<MatrixWorkspace>(self.monitorWorkspace());
+boost::weak_ptr<Workspace> getMonitorWorkspace(MatrixWorkspace &self) {
+  return boost::weak_ptr<Workspace>(self.monitorWorkspace());
 }
 /**
  * Clear monitor workspace attached to for current workspace.
diff --git a/Framework/PythonInterface/test/python/mantid/api/MatrixWorkspaceTest.py b/Framework/PythonInterface/test/python/mantid/api/MatrixWorkspaceTest.py
index 791e14f7d667e4e27e6bf6366fcba09aca63fb57..e11d821084ad9cc76bfaef575fb13c721c4b49ba 100644
--- a/Framework/PythonInterface/test/python/mantid/api/MatrixWorkspaceTest.py
+++ b/Framework/PythonInterface/test/python/mantid/api/MatrixWorkspaceTest.py
@@ -350,8 +350,12 @@ class MatrixWorkspaceTest(unittest.TestCase):
         run_algorithm('CreateWorkspace', OutputWorkspace='ws_mon',DataX=[1.,2.,3.], DataY=[2.,3.], DataE=[2.,3.],UnitX='TOF')
         
         ws1=AnalysisDataService.retrieve('ws1')
-        monWs = ws1.getMonitorWorkspace()
-        self.assertTrue(monWs is None)
+        try:
+            monWs = ws1.getMonitorWorkspace()
+            GotIt = True
+        except RuntimeError:
+            GotIt = False             
+        self.assertFalse(GotIt)
         
         monWs = AnalysisDataService.retrieve('ws_mon')
         ws1.setMonitorWorkspace(monWs)
@@ -361,22 +365,27 @@ class MatrixWorkspaceTest(unittest.TestCase):
         self.assertEquals(monWs.getTitle(), monWs1.getTitle())
         
         ws1.clearMonitorWorkspace()
-        monWs1 = ws1.getMonitorWorkspace()
-        self.assertTrue(monWs1 is None)
+        try:
+            monWs1 = ws1.getMonitorWorkspace()
+            GotIt = True
+        except RuntimeError:
+            GotIt = False             
+        self.assertFalse(GotIt)
 
         # Check weak pointer issues
         ws1.setMonitorWorkspace(monWs)
         wms=ws1.getMonitorWorkspace()
+
         allFine = False
         try:
-            ws1.setMonitorWorkspace(wms)
+            ws1.setMonitorWorkspace(wms) 
             allFine = True
         except ValueError:            
             pass
         self.assertTrue(allFine)
 
 if __name__ == '__main__':
-    #unittest.main()
+    unittest.main()
     #Testing particular test from Mantid
-    tester=MatrixWorkspaceTest('test_setGetMonitorWS')
-    tester.test_setGetMonitorWS()
+    #tester=MatrixWorkspaceTest('test_setGetMonitorWS')
+    #tester.test_setGetMonitorWS()