231 Commits

Author SHA1 Message Date
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
615cf2349e Update self-test parameters 2020-03-19 09:48:40 -04:00
3e4dfec147 Add support for alternate forms of header and source files to test runner generator. This borrows heavily from #477 (Thanks @Tuc-an) but maintains the ability to sort files that don't need to be relinked. 2020-03-17 14:02:54 -04:00
75754de04e more of the same. 2020-03-16 20:38:54 -04:00
6e3ecbf92b Declare the test variable static 2020-03-16 20:26:10 -04:00
d7a05a56df Working with very picky compilers. :) 2020-03-16 20:14:02 -04:00
3ee46e3da3 Forgot EOL 2020-03-16 19:51:05 -04:00
a58054b013 Update makefile to run tests. tweak broken tests. 2020-03-16 19:33:51 -04:00
71e77ce6fb Added NOT-EQUAL int variants.
Organized Unit Tests
2020-03-16 18:45:40 -04:00
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
f3b87bb91c another tweak to how we handle the ci vs local testing. 2019-12-15 14:36:59 -05:00
e276e1a458 Swap order so that CI runs all the makefile tests... but local test:all skips them as mostly redundant and very platform specific. 2019-12-15 10:30:26 -05:00
47b630391d Minor tweak to the way we load includes 2019-12-15 10:07:05 -05:00
fb45e3010b the makefiles in the extras are in the test dirs. 2019-12-14 22:38:52 -05:00
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
461c6b3978 Clean up ci tasks.
Get the files to use the build directory again.
2019-12-14 05:18:46 -05:00
3f71d10b2e Refactor all yaml files for self-tests to fit Ceedling format for wider reuse.
Fix mistake in unity selftest without output spy running.
Namespace self-tests for consistency across ThrowTheSwitch projects (like being able to test:all)
Reduce clutter of NAMED self-tests in task list.
2019-12-13 20:38:42 -05:00
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
32e6d93ab0 Fix TEST_ASSERT_HEX64_ARRAY_WITHIN truncating delta to 32 bits. 2019-10-29 16:59:59 -04:00
354e2b4da6 Added set of assertions for checking CHAR's and CHAR arrays (not as strings) 2019-10-28 16:54:32 -04:00
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
368a7d8970 Fixed a couple of mistakes in last commit 2019-10-25 11:20:25 -04:00
d16c27b085 - added target for checking ANSI compliance
- fixed ANSI (C89) issues, including #418
2019-10-25 10:17:12 -04:00
eb0bd42f0d Updated to newer coding standard 2019-10-24 15:33:41 -04:00
277e844bed Convert RUN_TEST() to a function (generated from an ERB template).
Converting RUN_TEST() from a macro to a function significantly reduces the size
of the compiled binary.  On amd64, the largest test runner in the test suite
(testsample_DefaultsThroughCommandLine_runner.o) was reduced from 3.4 kB to 2.4
kB (stripped).
2019-10-22 15:18:20 -04:00
9578a382cc Fix "rake scripts" when running on Windows.
cmd.exe does not recognize backslash as an escape character,
leading to errors like the following:

    error: stray '\' in program
    note: in definition of macro 'UNITY_OUTPUT_CHAR_HEADER_DECLARATION'

It does, however, recognize double quotes, so we can use those as
a portable method of escaping special characters on both Windows
and UNIX.
2019-09-13 16:19:46 -04:00
2939c420ed Better protection against nested comments (and things that look like comments) 2019-08-12 15:40:43 -04:00
0892db2376 Protect against nil return codes in rakefiles 2019-07-06 11:31:31 -04:00
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
bc72eeb211 Merge pull request #425 from farrrb/fix-ti-c55-sizeof
TI C55x compatibility patches - removal of sizeof operator from the interfaces
2019-07-05 15:41:41 -04:00
6b2eb52468 Add test to verify comment-stripping is working with http-style comments. 2019-07-05 15:35:40 -04:00
8168382b91 Adjust testHexPrintsUpToMaxNumberOfNibbles (independent of sizeof operator and arithmetics) 2019-05-12 09:16:41 +02:00
d70047881e Merge pull request #377 from elliot-gawthrop/execution-time-embedded
Execution time improvements
2019-05-04 07:53:37 -04:00
7514de0582 Merge branch 'master' into test-cleanup-gt-lt 2019-05-04 07:28:12 -04:00
9340582797 ARRAY_WITHIN in unity 2019-04-20 14:10:56 -04:00
89465c88b0 Add tests for GREATER_OR_EQUAL, LESS_OR_EQUAL, LESS_THAN, and GREATER_THAN 2019-04-14 15:59:40 -04:00
f69fbe8a95 expliticly show test failures of unequal strings 2019-04-13 11:53:14 -04:00
076f0fff56 Improvements to the execution time feature
- Running time macros have been made more portable, previously it was not
  possible to override all macros
- Running time macros will be executed by default test runner, and auto test
  runners
- Adds a default execution time implementation for unix. (Previous default
  implementation only worked on Windows)
- For embedded platforms there is a simple method of getting a default
  implementation by defining a single macro UNITY_CLOCK_MS()
- Removed need for UNITY_EXEC_TIME_RESET. This was not being used for the default
  implementations, if anything ever did need reset-like functionality it could
  simply be wrapped up with the start or stop macros for that platform
2019-01-31 22:01:20 +00:00
5db2a3dbd9 Add support for strings in TEST_CASE() 2018-12-10 20:53:27 +00:00
39fbd13cae Merge branch 'master' into float-printing 2018-11-28 14:02:41 -05:00
6b657c6f17 Fix (most) Rubocop warnings. 2018-11-28 13:27:00 -05:00
f0e4571c96 Merge branch 'master' into unit-test-execution-time 2018-07-28 20:01:50 +01:00
e038ae2ade Refactored the test evaluation of the flushSpy 2018-02-18 18:44:58 +01:00
436a46d8ef Got the tests running 2018-02-18 17:43:08 +01:00
2480a6124e Added unit test for the call to flush 2018-02-18 17:08:49 +01:00
5f67ac6ab2 Fixed copy and paste error, changed the signature from:
void flushSpy(int c) {}
to:
 void flushSpy(void) {}
2018-02-18 16:32:04 +01:00
37271e8a13 Fixed copy and paste error 2018-02-18 14:53:39 +01:00
25804f3ab4 Added flushSpy and the respective helper functions 2018-02-18 14:46:42 +01:00
456759296b Added flushSpy 2018-02-18 14:23:26 +01:00
fe950b9fa3 Makefile preparations 2018-02-18 14:11:19 +01:00