251 Commits

Author SHA1 Message Date
5204c1bacf Merge pull request #550 from jannisbaudisch/fix_test_parameterization_regex
Improve regex for test parameterization to support function pointers
2023-02-06 15:31:49 -05:00
5a36b197fb Merge pull request #644 from AJIOB/implement_array_within_check
Adding within API support for float & double arrays
2022-12-29 19:43:58 -05:00
d0e3d73b7d Merge pull request #640 from AJIOB/docs_param_tests
Create documentation for parameterized tests
2022-12-06 08:25:13 -05:00
b2360fa7ca Adding delta infinity & nan checks & tests 2022-11-28 20:23:36 +03:00
9c45c7861b Adding support for floating point arrays within.
Testing newly created API.
2022-11-28 18:28:31 +03:00
ad86e15ca5 Adding docs to TEST_RANGE formats.
Adding parameterizedDemo tests as an independent file
2022-11-27 16:09:22 +03:00
48d7210644 Fixing CI tests passing 2022-11-27 14:46:34 +03:00
e4085eb8e6 Using default macro for TEST_CASEs define.
Improving docs about manual definition.
2022-11-27 14:36:22 +03:00
4d5ed3d68b Adding possibility for automatically defining
TEST_CASE & TEST_RANGE macros
2022-11-27 13:05:13 +03:00
563786f97c Add support for TEST_RANGE with exclusive end
If the range is <start, end, step> instead of [start, end, step], the
end value will not be included in the range.

This can be useful if you have a define that defines e.g. the size of
something and you want to use this define as the end value. As the
pre-processor doesn't evalutate expressions (unless you do some macro
magic) you can't specify the range as [0, MY_SIZE - 1, 1]. With this
change you can then instead give the range <0, MY_SIZE, 1>.
2022-10-14 18:51:45 +02:00
76b7e359cc Improve handling of space in TEST_CASE/RANGE
The fix in 285bb6e282 didn't completly fix the issue.
2022-10-13 22:13:03 +02:00
b44c2dd095 Fix broken YAML parsing on later Rubies with Psych >=4.0
YAML.load is now interpreted as YAML.safe_load, which breaks where the
YAML file contains aliases. If we can assume our yaml files are
trusted (since this a development tool), we can check for the presence
of YAML.unsafe_load and use it instead if it exists.
2022-05-27 15:08:11 +01:00
e54c9787b7 Merge pull request #560 from jonathangjertsen/more-float
Add macros for testing inequalities between floats, doubles
2022-05-25 11:04:56 -04:00
4389bab82e Support option to specify array length of zero to force pointer comparison. 2022-04-19 17:27:31 -04:00
0df1d442cb Rearrange details to always print if given, no matter if another msg added or not.
Print output on failures no matter if verbose or not.
Enforce that HEX comparisons are unsigned comparisons.
2022-04-19 16:21:04 -04:00
b732fbf1ca Add LESS_OR_EQUAL and GREATER_OR_EQUAL assertions for doubles and floats 2021-12-03 20:39:55 +01:00
244edf6c16 Add NOT_EQUAL* and NOT_WITHIN* checks for floats and doubles 2021-12-03 19:53:31 +01:00
410de1a02b Add macros for testing inequalities between floats, doubles 2021-05-24 17:02:58 +02:00
77bd4f9943 Add test for function pointers in parameterized tests 2021-04-01 11:07:49 +02:00
fcab680286 Ruby script cleanup.
Fix warnings.
Remove 32-bit tests from standard suite because they're not running on most platforms.
2021-01-16 21:03:18 -05:00
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