52bc073234
Add stack trace macros to all functions.
...
Low-level functions only include stack trace in test builds while higher-level functions ship with stack trace built-in. Stack traces include all parameters passed to the function but production builds only create the parameter list when the log level is set high enough, i.e. debug or trace depending on the function.
2018-05-18 11:57:32 -04:00
4d6a51ac47
Add HARNESS_FORK for tests that require fork().
...
A standard pattern for tests makes fork() easier to use and should help prevent some common mistakes.
2018-05-06 08:56:42 -04:00
0a860e0b60
Full branch coverage for command/help/help, common/error, common/ini, and common/log modules.
2018-05-05 09:38:09 -04:00
c3a8fbe706
Add _FMT variants for all THROW macros so format types are checked by the compiler.
2018-05-03 11:24:29 -04:00
9001b9b957
Replace THROW_ON_SYS_ERROR() with THROW_SYS_ERROR().
...
The former macro was hiding missing branch coverage for critical error handling.
2018-03-24 14:11:29 -04:00
cced6ec03a
Add ASSERT_DEBUG() macro for debugging.
...
Replace all current assert() calls except in tests that can't use the debug code.
2018-03-12 14:31:22 -04:00
298b33988c
Fix non-compliant formatting for function declarations.
...
Per review by Cynthia Shang.
2018-01-31 18:22:25 -05:00
8f81620b9f
Improve error module.
...
Add functions to convert error codes to C errors and handle system errors.
2018-01-16 13:29:27 -05:00
3b43047e0d
Disable -Wclobber compiler warning.
...
...because it is mostly useless but keep the rest of of -Wextra.
2017-11-19 16:44:33 -05:00
dc1a5c18ac
Wrap try in a do...while loop to make sure that no random else is attached to the main if block.
2017-11-19 16:30:23 -05:00
cf7da546a3
Simplify try..catch..finally names.
2017-11-13 21:22:13 -05:00
f1e739b4aa
Add C error handler.
...
Basic try ... catch ... finally pattern to simplify error handling in C.
2017-10-16 10:09:56 -04:00