| CUnit Progammers Guide | ||
|---|---|---|
| Prev | Home | Next | 
    int maxi(int i1, int i2)
    {
      return (i1 > i2) ? i1 : i2;
    }
    void test_maxi(void)
    {
      CU_ASSERT(maxi(0,2) == 2);
      CU_ASSERT(maxi(0,-2) == 0);
      CU_ASSERT(maxi(2,2) == 2);
    }
CU_FALSE.  Upon assertion failure, 
the test function continues unless the user chooses the 'xxx_FATAL' version 
of an assertion.  In that case, the test function is aborted and returns 
immediately.  FATAL versions of assertions should be used with caution!  
There is no opportunity for the test function to clean up after itself once a
FATAL assertion fails.  The normal suite 
cleanup function is not affected, however, and will be run in either case.
There are also special "assertions" for registering a 
pass or fail with the framework 
without performing a logical test.  These are useful for testing flow 
of control or other conditions not requiring a logical test:
    void test_longjmp(void)
    {
      jmp_buf buf;
      int i;
      i = setjmp(buf);
      if (i == 0) {
        run_other_func();
        CU_PASS("run_other_func() succeeded.");
      }
      else
        CU_FAIL("run_other_func() issued longjmp.");
    }
| 
        CU_ASSERT(int expression) | Assert that expression is CU_TRUE(non-zero) | 
| 
        CU_ASSERT_TRUE(value) | Assert that value is CU_TRUE (non-zero) | 
| 
        CU_ASSERT_FALSE(value) | Assert that value is CU_FALSE(zero) | 
| 
        CU_ASSERT_EQUAL(actual, expected) | Assert that actual = = expected | 
| 
        CU_ASSERT_NOT_EQUAL(actual, expected)) | Assert that actual != expected | 
| 
        CU_ASSERT_PTR_EQUAL(actual, expected) | Assert that pointers actual = = expected | 
| 
        CU_ASSERT_PTR_NOT_EQUAL(actual, expected) | Assert that pointers actual != expected | 
| 
        CU_ASSERT_PTR_NULL(value) | Assert that pointer value == NULL | 
| 
        CU_ASSERT_PTR_NOT_NULL(value) | Assert that pointer value != NULL | 
| 
        CU_ASSERT_STRING_EQUAL(actual, expected) | Assert that strings actual and expected are equivalent | 
| 
        CU_ASSERT_STRING_NOT_EQUAL(actual, expected) | Assert that strings actual and expected differ | 
| 
        CU_ASSERT_NSTRING_EQUAL(actual, expected, count) | Assert that 1st count chars of actual and expected are the same | 
| 
        CU_ASSERT_NSTRING_NOT_EQUAL(actual, expected, count) | Assert that 1st count chars of actual and expected differ | 
| 
        CU_ASSERT_DOUBLE_EQUAL(actual, expected, granularity) | Assert that |actual - expected| <= |granularity| Math library must be linked in for this assertion. | 
| 
        CU_ASSERT_DOUBLE_NOT_EQUAL(actual, expected, granularity) | Assert that |actual - expected| > |granularity| Math library must be linked in for this assertion. | 
| 
        CU_PASS(message)
       | Register a passing assertion with the specified message. No logical test is performed. | 
| 
        CU_FAIL(message) | Register a failed assertion with the specified message. No logical test is performed. | 
| Deprecated Name | Equivalent New Name | 
| ASSERT | CU_ASSERT_FATAL | 
| ASSERT_TRUE | CU_ASSERT_TRUE_FATAL | 
| ASSERT_FALSE | CU_ASSERT_FALSE_FATAL | 
| ASSERT_EQUAL | CU_ASSERT_EQUAL_FATAL | 
| ASSERT_NOT_EQUAL | CU_ASSERT_NOT_EQUAL_FATAL | 
| ASSERT_PTR_EQUAL | CU_ASSERT_PTR_EQUAL_FATAL | 
| ASSERT_PTR_NOT_EQUAL | CU_ASSERT_PTR_NOT_EQUAL_FATAL | 
| ASSERT_PTR_NULL | CU_ASSERT_PTR_NULL_FATAL | 
| ASSERT_PTR_NOT_NULL | CU_ASSERT_PTR_NOT_NULL_FATAL | 
| ASSERT_STRING_EQUAL | CU_ASSERT_STRING_EQUAL_FATAL | 
| ASSERT_STRING_NOT_EQUAL | CU_ASSERT_STRING_NOT_EQUAL_FATAL | 
| ASSERT_NSTRING_EQUAL | CU_ASSERT_NSTRING_EQUAL_FATAL | 
| ASSERT_NSTRING_NOT_EQUAL | CU_ASSERT_NSTRING_NOT_EQUAL_FATAL | 
| ASSERT_DOUBLE_EQUAL | CU_ASSERT_DOUBLE_EQUAL_FATAL | 
| ASSERT_DOUBLE_NOT_EQUAL | CU_ASSERT_DOUBLE_NOT_EQUAL_FATAL |