diff options
-rw-r--r-- | simple_test.c | 51 |
1 files changed, 51 insertions, 0 deletions
diff --git a/simple_test.c b/simple_test.c new file mode 100644 index 0000000..9299eea --- /dev/null +++ b/simple_test.c @@ -0,0 +1,51 @@ +#include "test.h" +#include "header_with_stuff_to_be_tested.h" + +BEGIN_TEST + +/* a simple test using only stack mem */ +TEST("description of the first test") +{ + int var1=2; + int var2=4; + + /* add is a function included from our hypothetical + * header_with_stuff_to_be_tested */ + EXPECT_INT("error message shown on failing", + var1+var2, add(var1, var2)); +} + +/* this test uses heap memory, so things get a bit + * more complicated */ +TEST("this is the second test") +{ + /* first, ensure all your pointers which will + * point to heap mem are declared */ + char *heap_string=NULL; + + /* next, declare a list of statements to be + * called to clean up memory once the test + * is completed */ + CLEANUP( + if(heap_string != NULL) + free(heap_string); + ) + + /* then, define the body of the test */ + + /* STATE can be used to report (with pretty + * formatting) the current state within the + * test, which may be useful in the case of + * a segfault */ + STATE("grabbing heap string"); + + heap_string=get_heap_string_value(); + + EXPECT_STR("i suck at grabbing pointers!", + "expected value", heap_string); + + /* finally, call RETURN(); to run the + * cleanup code and continue */ +} + +END_TEST |