diff options
| author | shmibs <shmibs@gmail.com> | 2014-11-21 01:34:58 -0700 | 
|---|---|---|
| committer | shmibs <shmibs@gmail.com> | 2014-11-21 01:34:58 -0700 | 
| commit | f55a6c7c369807fc306f089edeedf3ca23ab4589 (patch) | |
| tree | 499400c4449a1ca8d9c8b42bb20413966fe33c89 | |
| parent | 941b0aeffe6afad6ca9645641fe15d14bfca275c (diff) | |
| download | simple-test-f55a6c7c369807fc306f089edeedf3ca23ab4589.tar.gz | |
cleanup and add tests
| -rw-r--r-- | simple-test.h | 34 | 
1 files changed, 23 insertions, 11 deletions
| diff --git a/simple-test.h b/simple-test.h index b5e4678..e7220ca 100644 --- a/simple-test.h +++ b/simple-test.h @@ -56,11 +56,11 @@ _test_cleanup_current=_TEST_PASTE(_test_cleanup_, unique_count);  /* pretty printing for the current state within   * a test */  #define STATE(...) \ -	do { \ -		printf("\e[1m    :: \e[m\e[34m"); \ -		printf(...); \ -		printf("...\e[m\n"); \ -	} while(0) +do { \ +	printf("\e[1m    :: \e[m\e[34m"); \ +	printf(__VA_ARGS__); \ +	printf("...\e[m\n"); \ +} while(0)  /* one of these goes at the end of every test   * with CLEANUP (unless you want memory leaks). @@ -83,6 +83,18 @@ do { \   *  TESTS  *   ***********/ +#define EXPECT_NULL(summary, arg) \ +do { \ +	if((arg) != NULL) \ +		_TEST_FAIL_VAL(summary, "%s", "%p", "NULL", (void*)(arg)); \ +} while(0); + +#define EXPECT_NON_NULL(summary, arg) \ +do { \ +	if((arg) == NULL) \ +		_TEST_FAIL_VAL(summary, "%s", "%p", "non NULL", (void*)(arg)); \ +} while(0); +  #define EXPECT_ZERO(summary, arg) \  do { \  	if(arg) \ @@ -91,31 +103,31 @@ do { \  #define EXPECT_ONE(summary, arg) \  do { \ -	if(arg != 1) \ +	if((arg) != 1) \  		_TEST_FAIL_VAL(summary, "%i", "%i", 1, arg); \  } while(0);  #define EXPECT_GREATER_THAN_ZERO(summary, arg) \  do { \ -	if(arg <= 0) \ +	if((arg) <= 0) \  		_TEST_FAIL_VAL(summary, "%s", "%i", ">0", arg); \  } while(0);  #define EXPECT_INT(summary, arg1, arg2) \  do { \ -	if(arg1 != arg2) \ +	if((arg1) != (arg2)) \  		_TEST_FAIL_VAL(summary, "%i", "%i", arg1, arg2); \  } while(0);  #define EXPECT_EQUAL_INT(summary, arg1, arg2) \  do { \ -	if(arg1 != arg2) \ +	if((arg1) != (arg2)) \  		_TEST_FAIL_EQUAL(summary, "%i", "%i", arg1, arg2); \  } while(0);  #define EXPECT_UNEQUAL_INT(summary, arg1, arg2) \  do { \ -	if(arg1 == arg2) \ +	if((arg1) == (arg2)) \  		_TEST_FAIL_EQUAL(summary, "%i", "%i", arg1, arg2); \  } while(0); @@ -141,7 +153,7 @@ do { \  do { \  	printf("\e[1m    :: \e[m\e[31mFAIL: " summary "\e[m\n"); \  	printf("\e[1m    :: \e[m\e[1;32m  expected:\e[m " format1 "\n", expected);\ -	printf("\e[1m    :: \e[m\e[1;31m    actual:\e[m " format1 "\n", actual); \ +	printf("\e[1m    :: \e[m\e[1;31m    actual:\e[m " format2 "\n", actual); \  	_TEST_RETURN(true); \  } while(0) | 
