-
Notifications
You must be signed in to change notification settings - Fork 0
/
CHANGES
66 lines (59 loc) · 3.43 KB
/
CHANGES
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
TODO:
- I hate ctest_start. Is there any way to declare a function as a
unit test, allow nesting, and allocate everything on the stack?
- Don't malloc on every test. Keep a cache or something.
- Get rid of the vsprintf potential buffer overflow (and stdarg?).
In fact, printf has gotten fairly painful. Convert everything to puts?
- Optionally install signal handlers. int/fp /0 and bus errors.
Can we recover just like we do for failed asserts?
- Make a homepage for it, replace the URL in the readme file.
- What to do about compiling in asserts? I want to be able to run the
unit tests at any time so I want asserts compiled in. But do I want
to error out if the test is hit during normal usage?? Probably not!
- ctest_assert_fmt formats the string even if nothing is eventually printed.
That's pretty costly.
Version 0.8, IN PROGRESS
- Renamed mutest to ctest. A generic name is better than a lame one.
- Added command-line argument handling. See ctest_read_args().
- Got rid of mutest-config. it was a complex solution to a simple problem.
- Now compiled with -pedantic: 100% straight ANSI C89, not even any // comments.
- Can now run asserts without having them wrapped in ctest_start
(if the assert fails, the app exits immediately).
- Added ctest_preferences to provide more control over how ctest runs.
- Got rid of printf format errors (AssertZero(12%i) would use %i as a format string)
Version 0.71, 20 Oct 2007
- created the mutest_start macro, cleaned up the assertion routines.
- Created test flavors. Now it's easy for people to customize their asserts.
- Split mutest from tmtest's zutest.c/.h files.
- Got rid of mutest_proc, now clients handle calling the unit tests 100%
Version 0.7, 16 Feb 2007
- turn dependency tree into functions
Version 0.62, 22 Jan 2007
- clean up failure messages
Version 0.61, 30 Apr 2006
- first version worth releasing
Would be nice but might never happen:
- Add the optional ability to fork before each test. It's a pretty useless
feature but some guys seem pretty hot about this.
- "A test could crash and fool the framework into thinking that it passed!"
- Erm, you're probably more likely to be hit by lightning.
- This would allow the ability to specify an optional timeout.
- Add tests for CTEST_LONG_LONG_ASSERTS? Do it in a different file of course.
- AssertStrEmpty and AssertStrNonEmpty suck. Clean them up?
- It won't be easy... They work well.
- Make it easy to temporarily disable tests.
- Potential command-line arguments we could support:
--list: lists unit tests without actually running them.
--skip=NAME: specify unit tests that should be skipped in this run.
--exit-on-first-error: for when you're only interested in a red/green report.
- It's lame that I need to declare the test function and start the test
separately. Make a macro so I can just cunit_test(ints) { ... }
- I can't figure out an acceptable macro. :( It's especially hard
because the function and the for loop can't share the same '}'.
- Add an epsilon to the floating point comparisons?
- This is a little scary... it can confuse the heck out of you if
you don't know exactly what's going on, make things MORE complex.
- Don't add until someone wants it and knows how to do it right.
- Make ctest's asserts behave more like regular asserts when used outside
a ctest_start block. Raise signals, disappear when NDEBUG is set, etc.
- not worth the trouble: just #include <assert.h> if you want asserts.