Also added basic check of exceptinHandler
This commit is contained in:
+5
-2
@@ -135,7 +135,7 @@ class NWErrorMessage(QDialog):
|
|||||||
# END Class NWErrorMessage
|
# END Class NWErrorMessage
|
||||||
|
|
||||||
|
|
||||||
def exceptionHandler(exType, exValue, exTrace):
|
def exceptionHandler(exType, exValue, exTrace, testMode=False):
|
||||||
"""Function to catch unhandled global exceptions.
|
"""Function to catch unhandled global exceptions.
|
||||||
"""
|
"""
|
||||||
import nw
|
import nw
|
||||||
@@ -173,7 +173,10 @@ def exceptionHandler(exType, exValue, exTrace):
|
|||||||
logger.critical("Could not close the project before exiting")
|
logger.critical("Could not close the project before exiting")
|
||||||
logger.critical(str(e))
|
logger.critical(str(e))
|
||||||
|
|
||||||
qApp.exit(1)
|
if testMode:
|
||||||
|
return errMsg.msgBody.toPlainText()
|
||||||
|
else:
|
||||||
|
qApp.exit(1)
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
logger.critical(str(e))
|
logger.critical(str(e))
|
||||||
|
|||||||
+6
-1
@@ -8,7 +8,7 @@ import pytest
|
|||||||
|
|
||||||
from PyQt5.QtWidgets import qApp
|
from PyQt5.QtWidgets import qApp
|
||||||
|
|
||||||
from nw.error import NWErrorMessage
|
from nw.error import NWErrorMessage, exceptionHandler
|
||||||
|
|
||||||
@pytest.mark.error
|
@pytest.mark.error
|
||||||
def testErrorDialog(qtbot, nwFuncTemp, nwTemp):
|
def testErrorDialog(qtbot, nwFuncTemp, nwTemp):
|
||||||
@@ -35,6 +35,11 @@ def testErrorDialog(qtbot, nwFuncTemp, nwTemp):
|
|||||||
nwErr._doClose()
|
nwErr._doClose()
|
||||||
nwErr.close()
|
nwErr.close()
|
||||||
|
|
||||||
|
theMessage = exceptionHandler(Exception, "Second Error", sys.last_traceback, testMode=True)
|
||||||
|
assert theMessage
|
||||||
|
assert "Second Error" in theMessage
|
||||||
|
assert "Exception" in theMessage
|
||||||
|
|
||||||
nwGUI.closeMain()
|
nwGUI.closeMain()
|
||||||
|
|
||||||
# qtbot.stopForInteraction()
|
# qtbot.stopForInteraction()
|
||||||
|
|||||||
Reference in New Issue
Block a user