1
0
mirror of https://github.com/ThrowTheSwitch/Unity.git synced 2026-01-23 08:25:58 +01:00
Commit Graph

400 Commits

Author SHA1 Message Date
Connor Newton
b4b1994bd7 Fix TEST_ASSERT_BIT(S)_HIGH testing only lower 32-bits
The high/low bits masks for TEST_ASSERT_BIT(S)_HIGH/LOW are created
by casting 0/-1 to UNITY_UINT32. This isn't OK on 64-bit platforms
as it results in a high bits mask of 0x00000000ffffffff instead of
0xffffffffffffffff.

Cast 0/-1 to UNITY_UINT instead.
2020-05-26 12:58:14 +01:00
André Draszik
a6a4e9766d unity: annotate noreturn APIs (fix Wsuggest-attribute=noreturn warnings)
GCC (& Clang) have the notion of pure and const functions [1],
where those attributes are intended to help the optimiser.

Annotate a few APIs here with the appropriate key words, which
also fixes Wsuggest-attribute=noreturn warning, which a
source base might have enabled:
Compiling unity.c...
.../src/unity.c: In function ‘UnityFail’:
.../src/unity.c:1759:6: warning: function might be candidate for attribute ‘noreturn’ [-Wsuggest-attribute=noreturn]
 1759 | void UnityFail(const char* msg, const UNITY_LINE_TYPE line)
      |      ^~~~~~~~~
.../src/unity.c: In function ‘UnityIgnore’:
.../src/unity.c:1796:6: warning: function might be candidate for attribute ‘noreturn’ [-Wsuggest-attribute=noreturn]
 1796 | void UnityIgnore(const char* msg, const UNITY_LINE_TYPE line)
      |      ^~~~~~~~~~~

[1] https://gcc.gnu.org/onlinedocs/gcc/Common-Function-Attributes.html

Signed-off-by: André Draszik <git@andred.net>
2020-05-25 15:49:47 +01:00
André Draszik
9760c4f14f unity: fix Wswitch-enum warning
Compiling a source base / test with Wswitch-enum enabled, gives
the following warning:

../src/unity.c: In function ‘UnityAssertFloatSpecial’:
../src/unity.c:1092:5: warning: enumeration value ‘UNITY_FLOAT_INVALID_TRAIT’ not handled in switch [-Wswitch-enum]
 1092 |     switch (style)
      |     ^~~~~~

Fix by adding the missing value to the default (unhandled) case.

Signed-off-by: André Draszik <git@andred.net>
2020-05-25 08:58:37 +01:00
Mark VanderVoord
87f382fbb2 Merge branch 'master' into master 2020-05-04 09:45:03 -04:00
Alari Õis
97f6d55256 c99 support for new RUN_TEST macro 2020-05-04 08:20:19 +03:00
Mark VanderVoord
cf949f45ca Bump Version 2020-05-03 16:03:07 -04:00
Mark VanderVoord
fd80d514ee Revert "More elegant RUN_TEST macro"
This reverts commit cdfb7e092c.
2020-05-03 08:57:21 -04:00
Mark VanderVoord
9f4b2251de Merge pull request #493 from VShilenkov/master
cmake: update CMake
2020-05-02 14:38:02 -04:00
Alari Õis
cdfb7e092c More elegant RUN_TEST macro 2020-05-01 08:18:09 +03:00
Vitalii Shylienkov
a2af08c773 project: revert UNITY_VERSION_* to unity.h 2020-04-14 11:02:24 +02:00
Vitalii Shylienkov
2a2a4d19c5 meson: supports version
- generate version header
2020-04-13 12:47:07 +02:00
John Lindgren
2485d49d13 Wrap UNITY_TEST_ASSERT in a do ... while(0) block
This ensures that constructions like the following work correctly:

  if(condition)
    TEST_ASSERT(a);
  else
    TEST_ASSERT(b);
2020-04-09 13:03:16 -04:00
Vitalii Shylienkov
d603ccdc3b cmake: update CMake 2020-04-09 13:58:45 +02:00
mvandervoord
f61a7ea8e4 Fix Issue #479 (Thanks @cy18) 2020-03-17 16:12:08 -04:00
mvandervoord
99199515fd Update documentation.
Add UNITY_PRINT_TEST_CONTEXT (thanks @jlindgren90 !)
Replaces PR #473
2020-03-17 15:01:46 -04:00
Mark VanderVoord
6a86a83207 Merge pull request #487 from michaelbadcrumble/master
Cleaning Meson build support implementation.
2020-03-16 19:55:55 -04:00
mvandervoord
71e77ce6fb Added NOT-EQUAL int variants.
Organized Unit Tests
2020-03-16 18:45:40 -04:00
mvandervoord
bad429428d Add assertion for checking empty null-terminated arrays. This is particularly useful for check c strings. 2020-03-16 15:04:40 -04:00
Jørn Villesen Christensen
3da0b4652c Implement macro TEST_PRINTF: Works like TEST_MESSAGE, but with a format-string.
Depends on UnityPrintFormatted (define UNITY_INCLUDE_PRINT_FORMATTED).
UnityPrintFormatted has been renamed to UnityPrintF due to changes below.

API of UnityPrintFormatted has been changed (hence the rename), but end users
(developers) can use the TEST_PRINTF as an almost-drop-in replacement TEST_PRINTF
is compatible with the old UnityPrintFormatted API (see below).

The behaviour of UnityPrintF has also been changed:
  - Now it prefixes the outout with test location information Output is marked
    as INFO.
  - It adds an EOL.

Both behaviours adopted from other output functions.
2020-02-14 22:43:51 +01:00
Michael
8a3a31f7b3 clean up meson support 2020-02-08 10:30:43 -08:00
mvandervoord
ef0cf704d9 Centralize all testing to the test folder instead of each subproject.
Trigger ALL tests when calling `rake test:all` instead of that being just the core tests.
2019-12-14 22:24:30 -05:00
mvandervoord
e3132cdddd Change the way we ignore the default runner. 2019-12-05 13:51:55 -05:00
mvandervoord
c5c36ab29f Do NOT include the default test runner if a custom runner has been defined.
Cleanup some style issues.
2019-12-05 13:19:43 -05:00
Mark VanderVoord
37a0f7184c Merge pull request #459 from elliot-gawthrop/combined_suite
Option to omit UnityBegin/UnityEnd calls in generate_test_runner
2019-10-30 09:33:18 -04:00
Mark VanderVoord
2aaf3c4504 Merge pull request #461 from jlindgren90/duplicate-branch
Remove exactly duplicated 'else if' branch
2019-10-30 09:31:14 -04:00
John Lindgren
8072c5c946 Remove exactly duplicated 'else if' branch. 2019-10-29 17:10:45 -04:00
John Lindgren
32e6d93ab0 Fix TEST_ASSERT_HEX64_ARRAY_WITHIN truncating delta to 32 bits. 2019-10-29 16:59:59 -04:00
anon
a303e08859 Option to omit UnityBegin/UnityEnd calls in generate_test_runner
By passing --omit_begin_end=1 to generate_test_runner.rb, the script
will now omit calls to UnityBegin and UnityEnd when running tests in a
suite.

This allows multiple suites to be executed in a row, and then have an overall
summary of the tests which were executed across all suites.
2019-10-29 20:32:06 +00:00
John Lindgren
9c82fac380 Update incorrect comment. 2019-10-29 13:21:59 -04:00
mvandervoord
74d47e8afa Add missed casting 2019-10-29 06:34:09 -04:00
mvandervoord
354e2b4da6 Added set of assertions for checking CHAR's and CHAR arrays (not as strings) 2019-10-28 16:54:32 -04:00
mvandervoord
60b23dc8a4 Stopped supported -0 as a float output because (a) it is non-portable, only existing on some architectures and (b) relies on the undefined behavior of 1.0/0.0 2019-10-28 13:43:32 -04:00
mvandervoord
e1dca8fa48 Add options for different output formats 2019-10-28 12:43:11 -04:00
Mark VanderVoord
3f334b8be6 Merge pull request #450 from arcadien/fix_comments
Fix CMakeLists
2019-10-28 10:45:23 -04:00
mvandervoord
be87d790c7 Add verifyTest option to go with resetTest.
Fix docs.
2019-10-28 10:32:22 -04:00
Aurelien Labrosse
b75b19c969 CMakeLists fixes 2019-10-26 18:31:57 +02:00
mvandervoord
368a7d8970 Fixed a couple of mistakes in last commit 2019-10-25 11:20:25 -04:00
mvandervoord
d16c27b085 - added target for checking ANSI compliance
- fixed ANSI (C89) issues, including #418
2019-10-25 10:17:12 -04:00
Mark VanderVoord
d9b0edf282 Switch from the inconsistent use of weak symbols to handling setup, etc in script generators 2019-10-21 14:21:52 -04:00
Mark VanderVoord
9842a4d03d Switching to universal version being in the header file itself. 2019-10-21 10:12:59 -04:00
Mark VanderVoord
77008edca9 Support size_t macros 2019-10-21 08:32:35 -04:00
Mark VanderVoord
50db1a7e67 Merge pull request #445 from michaelbadcrumble/fix_meson_support
Fix Meson build system support.
2019-09-30 05:58:47 -04:00
Michael Brockus
7e3804545c Fixed typo in sub CMakeLists.txt.
Fixed a simple mistake.
2019-09-22 06:59:35 -07:00
Michael Brockus
bc7d89a891 Create CMakeLists.txt
Added new CMakeLists.txt here in the src dir, moved add library method from root script to sub script.
2019-09-17 12:17:22 -07:00
Michael Brockus
822e244bd4 Update source meson.build
Removed 'unity_src' variable because Unity only one source file, changed library method to static only because there was some issues with using Unity as a shared library, cleaned sub meson.build script and fixed comment in sub source root.
2019-09-17 09:37:41 -07:00
Mark VanderVoord
46263fc148 Get the 2's compliment of the unsigned int number when printing results without relying on problematic recasting of a negated int. (see #439) 2019-09-10 15:52:37 -04:00
Aurelien Labrosse
3ac73efe62 optimisation(AVR): Store static string in AVR EEPROM
* This can save a lot of program memory and allow to run test on ATTiny
2019-07-09 09:58:48 +02:00
Mark VanderVoord
3e82c0a96f sigh. wrong comment style 2019-07-06 11:07:00 -04:00
Mark VanderVoord
0000f1e6d2 Add TEST_MESSAGE for outputting messages without aborting a test and _MESSAGE variant to TEST_PASS collection. 2019-07-06 11:02:32 -04:00
Mark VanderVoord
45020b0d3b Cleanup issue #417 2019-07-05 19:14:22 -04:00