summaryrefslogtreecommitdiffstats
path: root/docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md
diff options
context:
space:
mode:
Diffstat (limited to 'docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md')
-rw-r--r--docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md43
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md b/docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md
new file mode 100644
index 0000000..13d381f
--- /dev/null
+++ b/docs/Reference/LuaUnitAssertionFunctions/4_ErrorAssertions.md
@@ -0,0 +1,43 @@
+# Error assertions
+
+Error related assertions, to verify error generation and error messages.
+
+* **_AFT.assertError(func, ...)**
+
+ Assert that calls to the function **func** with the arguments yields an error. If the function does
+ not yield an error, the assertion fails.
+
+ Note that the error message itself is not checked, which means that this function does not
+ distinguish between the legitimate error that you expect and another error that might be
+ triggered by mistake.
+
+ The next functions provide a better approach to error testing, by checking explicitly the error
+ message content.
+
+>**Note**
+>When testing LuaUnit, switching from assertError() to assertErrorMsgEquals() revealed quite a few bugs!
+
+* **_AFT.assertErrorMsgEquals(expectedMsg, func, ...)**
+
+ Assert that calls to the function **func** will generate exactly the given error message. If the
+ function does not yield an error, or if the error message is not identical, the assertion fails.
+
+ Be careful when using this function that error messages usually contain the file name and line
+ number information of where the error was generated. This is usually inconvenient. To ignore the
+ filename and line number information, you can either use a pattern with assertErrorMsgMatches()
+ or simply check if the message contains a string with assertErrorMsgContains() .
+
+* **_AFT.assertErrorMsgContains(partialMsg, func, ...)**
+
+ Assert that calls to the function **func** will generate an error message containing partialMsg.
+ If the function does not yield an error, or if the expected message is not contained in the
+ error message, the assertion fails.
+
+* **_AFT.assertErrorMsgMatches(expectedPattern, func, ...)**
+
+ Assert that calls to the function **func** will generate an error message matching expectedPattern.
+ If the function does not yield an error, or if the error message does not match the provided
+ pattern the assertion fails.
+
+ Note that matching is done from the start to the end of the error message. Be sure to escape
+ magic all magic characters with % (like -+.?\*) . \ No newline at end of file