jsalling
b0870ec8b9
Merge branch 'feature/print-floats'
...
Fix new type name conflicts
Conflicts:
src/unity.c
src/unity_internals.h
2016-12-15 21:15:30 -06:00
Mark VanderVoord
8e31f5d869
Revised internal type naming scheme to better sandbox Unity away from everything else. Sure, short was nice, but not at the expense of naming collisions.
2016-11-29 08:38:51 -05:00
jsalling
aa4d773df2
Tests for Printing All float values
...
Takes about 10 minutes to run all floats, so split into 3 tests for parallel
running later. This was useful during development for finding hard corner cases
and getting the routine to high quality. Off by default.
Note that all floats 16.0 and up can be represented uniquely (in this format) and will
round-trip back to the exact same float with sscanf(). This property is true for
UnityPrintFloat, despite a few rounding error cases, it will produce output identity.
Better comments and refactor on round ties to even
Add upper threshold value on round to even feature since numerical precision issues
start to give approximations when dividing one large double by another. When tested
on float values, using 1e22 gave the fewest rounding errors.
Fix warnings from gcc. Some float constants do not behave well in existing tests.
Add casts where conversions could be imprecise.
2016-11-19 13:59:19 -06:00
jsalling
25f6417351
Refactor repeated code to print float expected and actual
...
Move double tests down in the file
2016-11-19 13:52:24 -06:00
jsalling
9f4b1a332f
Tests for Printing Floating Point numbers
2016-11-19 13:52:24 -06:00
jsalling
47f6a85b8c
Make UnityPrintFloat on by default
...
Remove UNITY_FLOAT_VERBOSE entirely, add option UNITY_EXCLUDE_FLOAT_PRINT
Remove some questionable float casts from doubles
Default to Round Ties to Even behavior, add option to Round Ties Away from Zero
2016-11-19 13:52:24 -06:00
jsalling
54fe786fae
Round ties to even by default, many C libraries follow this
...
Linux gcc & clang and OSX clang produce output with ties round to even
Windows mingw gcc does not
Example 0.0078125 prints '0.007812'
2016-11-19 13:52:24 -06:00
jsalling
4a27d14734
Correct boundary conditions and add tests
2016-11-19 13:52:24 -06:00
jsalling
1dfcb54491
Start adding tests. Add const and simplify code.
2016-11-19 13:52:24 -06:00
jsalling
e48fe0a07c
Reorganize NaN and Inf printing into if-else blocks
2016-11-19 13:51:59 -06:00
Jean Carlo Machado
4faae4435d
removed duplicated declaration of putcharSpy
2016-11-16 21:37:51 -02:00
jsalling
933cc97364
Add option to set NaN != NaN for floating point assertions
2016-10-10 21:20:10 -05:00
Mark VanderVoord
dce6d329ff
Finished fixing floating point comparisons. We have streamlined how floats and doubles are checked, but we still can't compare them for equality directly. So we're directly testing for infinite and NaN before checking diffs. Also, we've officially decided that for testing purposes NaN shall equal NaN, +Inf shall equal +Inf, and -Inf shall equal -Inf. It's what most people expect during a test.
2016-09-22 08:35:22 -04:00
Mark VanderVoord
7dc17efbb3
Merge pull request #215 from jsalling/bugfix/inf-equals-inf
...
Bugfix Inf equals Inf
2016-09-21 20:52:58 -04:00
Mark VanderVoord
95435afa4e
Merge pull request #214 from jsalling/feature/c-strings
...
Print escapes for C strings
2016-09-07 07:48:09 -04:00
jsalling
de39186187
Add test for C string escape sequences
2016-09-01 01:18:03 -05:00
jsalling
af590028fa
Unity to print C-style escaped strings as "\x16"
...
Changes from "\0x16" before, makes it easier to copy strings from output
2016-09-01 01:18:03 -05:00
jsalling
0cc3e45a23
Suppress output of FAIL messages that are expected during testing
...
Works when using the putcharSpy, transparent without it
2016-08-31 20:43:21 -05:00
jsalling
028ca953d7
Finish checking for equal floats in Arrays functions
...
Refactor to use the same code everywhere for FloatWithin check
Rename and fix a few tests for new behavior, infinity == infinity
2016-08-27 15:12:45 -05:00
jsalling
268c5b7e0b
Make testunity.c printing uniform during failure, delete word "Previous"
2016-08-25 23:02:11 -05:00
jsalling
3108aba5c7
If two floats happen to be equal, return right away
...
Covers the cases where infinity == infinity
2016-08-23 22:36:02 -05:00
Mark VanderVoord
57676b5edc
- Fixed cases with wildcards in file handling.
2016-07-17 19:11:09 -04:00
Mark VanderVoord
1cecab30e8
- Added alias for filter -n of -f
...
- Added ability to surround filter strings in either type of quotes
- Added ability to filter on multiple test strings as a comma delimited list
- Added ability to filter on test_file:test_name
- Added ability to use alternate syntax for filter of -f="blah"
2016-07-08 17:35:37 -04:00
Mark VanderVoord
eba387fa3e
- Add tests which prove command line arguments now work with runner. Fixed a few bugs in this area.
2016-06-27 08:41:58 -04:00
Mark VanderVoord
96f51e8530
Updated method of testing generate_test_runner script to be a FUNCTIONAL test instead of a perfect code match. Backfilled most tests and added some coverage not previously present. Still need to test new command line args and a few cmock details.
2016-06-22 20:57:11 -04:00
Mark VanderVoord
c5c392b18a
update UNITY_OUTPUT_CHAR to not return a value (because we never check it anyway).
...
add UNITY_OUTPUT_FLUSH to make sure we get the output we need on aborted tests and whatnot.
2016-05-06 10:47:39 -04:00
jsalling
c5238adab2
100% code coverage for Unity project
...
Add test for failure count and UnityEnd return value
Cover printing escape codes with length parameter
Full statement coverage
2016-05-03 21:58:29 -05:00
jsalling
bff491c73c
Test strings not equal to NULL when using length parameter
2016-05-03 20:47:00 -05:00
jsalling
7c270e0541
Test that details are printed in a direct TEST_FAIL call
2016-05-03 20:31:37 -05:00
jsalling
4164540333
Test number arrays for two NULL inputs, it should pass
...
More statement coverage on NULL input feature
2016-05-03 20:26:42 -05:00
jsalling
213e47178c
Test string arrays and memory comparison with length 0, it should fail
2016-05-03 20:17:38 -05:00
jsalling
a6748f39cd
Test number arrays comparison with length 0, it should fail
...
Get test coverage on this feature for int, float, & double
2016-05-03 20:14:30 -05:00
Mark VanderVoord
4f2cdb03fc
Merge pull request #185 from jsalling/feature/output-declaration
...
Add Unity Fixture to the travisCI build and restore header declaration of UNITY_OUTPUT_CHAR
2016-04-26 22:53:41 -04:00
Jerry Jacobs
6a02f7e51c
Fixup issues when compiling with clang -Wmissing-variable-declarations
2016-04-26 14:17:10 +02:00
jsalling
573481729b
Revert commits 720ea42 and a27b03c which broke the Fixture build
...
These were aimed at preventing the internals header from declaring
a prototype for 'int UNITY_OUTPUT_CHAR(int);'. The second part fixed
an omitted declaration in the tests caused by the first commit.
Will replace the default behavior & add an option for this in next commit
2016-04-24 23:30:01 -05:00
Jerry Jacobs
720ea42a82
tests/testunity.c: Fix after redundant declarations fix
2016-04-13 12:59:31 +02:00
jsalling
13c99601a7
Add a value to FLOAT_TRAIT enum to enforce use of default case in switches
...
Revert the previous commit. Add tests for extended enum cases.
Fix crash due to accessing 'trait_names' array out of bounds.
Adding an extra invalid value to the end of an enum causes '-Wswitch' flag
to warn unless there is a switch default case - also enabled by '-Wall'.
2016-03-02 14:56:09 -06:00
jsalling
f55bed38a6
Delete function call syntax from Spy detect macros
...
This fixes #168 . See that github.com issue for more discussion.
Allows the tests to build when putchar() is defined as a macro
with parenthesis around it, as in the ARM embedded gcc compiler.
2016-02-25 10:41:04 -06:00
Mark VanderVoord
433ee63575
Added ability to finish test immediately with a pass condition by using TEST_PASS
2016-02-24 16:00:55 -05:00
jsalling
773c7f1770
Permissions changed to -x for testunity.c, reverts part of 51af84a7
2016-02-12 13:25:14 -06:00
Mark VanderVoord
10146392c8
Merge pull request #154 from jsalling/bugfix/AssertNumbersWithin-overflow
...
Bugfix for UnityAssertNumbersWithin()
2016-01-07 20:45:35 -05:00
Mark VanderVoord
33325f4a0b
More fixes to line endings
2016-01-07 14:20:59 -05:00
jsalling
8ca3062ad4
Adding tests for overflow when calling UnityAssertNumbersWithin()
...
32 or 64 bit test will fail if compiled with -m32 or -m64, repectively
on clang or gcc
Fixes to the failures will follow
2016-01-06 17:41:02 -06:00
jsalling
04adb2d2c9
Fix trailing whitespace CRLF, no code changes
...
Now that the project is using .gitattributes, get rid of CRLF in the repo.
2016-01-06 17:23:43 -06:00
jsalling
a3d81dfa41
Add tests for printing numbers using a compile time replacement spy
...
If Unity core is compiled with UNITY_OUTPUT_CHAR = putcharSpy, these tests
will run, otherwise they are ignored and print a message
Includes an implementation of putcharSpy, which allows checking the I/O
from Unity during a test. Follows closely from the Fixture spy
Tricky macros determine if putcharSpy is injected
2015-12-20 22:00:02 -06:00
Mark VanderVoord
dfbf21c2a3
- Added ability to tack on details to a Unity failure message.
2015-12-10 13:06:41 -05:00
Mark VanderVoord
a7b85335be
the test runner generator now has the ability to also output a header file for the tests, which can get pulled into the test itself if desired.
2015-07-21 15:35:33 -04:00
Nimrod Zimerman
f4292f6df5
Added back TEST_ASSERT_EQUAL_STRING_MESSAGE() which was (accidentally?) removed some time ago.
2015-07-15 13:27:15 +03:00
Eivind Tagseth
15b367f8d1
Fixed stupid typo
2015-04-23 21:02:05 +02:00
Eivind Tagseth
61c0b0b75c
Added support for TEST_ASSERT_EQUAL_STRING_LEN*
...
Compares two strings until maximum n bytes (i.e. strncmp()).
2015-04-23 15:39:19 +02:00