]> granicus.if.org Git - check/commitdiff
Applied fail_if (#709167) patch
authorhugo303 <hugo303@64e312b2-a51f-0410-8e61-82d0ca0eb02a>
Tue, 17 Aug 2004 08:39:12 +0000 (08:39 +0000)
committerhugo303 <hugo303@64e312b2-a51f-0410-8e61-82d0ca0eb02a>
Tue, 17 Aug 2004 08:39:12 +0000 (08:39 +0000)
git-svn-id: svn+ssh://svn.code.sf.net/p/check/code/trunk@179 64e312b2-a51f-0410-8e61-82d0ca0eb02a

check/ChangeLog
check/src/check.h.in
check/tests/check_check_master.c
check/tests/check_check_sub.c

index 87e81cb10e08398d744ae4bebef11369525e4390..c2d8634394ba93829287ebcb599c373ce4be86a9 100644 (file)
@@ -1,3 +1,8 @@
+2004-08-17 hugo303
+
+       * src/check.h.in tests/check_check_master.c tests/check_check_sub.c:
+       Applied fail_if (#709167) patch.
+
 2004-08-16 hugo303
 
        * doc/tutorial.sgml: Applied 'newbies' patch #995028 for autoconf doc.
index 596598226e1d442bfece157f23b084d537dcec2b..bf77b524b7eaac75915c3ec025c26255cbc86258 100644 (file)
@@ -158,6 +158,10 @@ static void __testname (void)\
 #define fail_unless(expr,msg)\
  _fail_unless(expr,__FILE__,__LINE__, msg ? msg : "Assertion '"#expr"' failed")
 
+/* Fail the test case if expr is true */
+#define fail_if(expr, msg)\
+ _fail_unless(!(expr),__FILE__,__LINE__,msg ?msg :"Assertion '"#expr"' failed")
+
 /* Non macro version of #fail_unless, with more complicated interface */
 void _fail_unless (int result, const char *file, int line, const char *msg);
 
index 83a07bb0789b220df6da4ff5978ebb0db8528adf..5b962342c31a5ea7a045529da78ea6241e9e6290 100644 (file)
@@ -14,13 +14,13 @@ TestResult **tr_all_array;
 
 START_TEST(test_check_nfailures)
 {
-  fail_unless (sub_nfailed == 11, "Unexpected number of failures received");
+  fail_unless (sub_nfailed == 12, "Unexpected number of failures received");
 }
 END_TEST
 
 START_TEST(test_check_ntests_run)
 {
-  fail_unless (sub_ntests == 12, "Unexpected number of tests run");
+  fail_unless (sub_ntests == 14, "Unexpected number of tests run");
 }
 END_TEST
 
@@ -32,6 +32,8 @@ START_TEST(test_check_failure_msgs)
     "Early exit with return value 1",
     /*    "Test passed", */
     "This test should fail",
+    /*    "Test passed", */
+    "This test should fail",
     "Assertion '2==3' failed",
     "Received signal 11",
     "Received signal 8",
@@ -68,6 +70,7 @@ START_TEST(test_check_failure_lnos)
     -1,
     -1,
     -1,
+    -1,
     -1};
   
   for (i = 0; i < sub_nfailed; i++) {
@@ -91,6 +94,7 @@ START_TEST(test_check_failure_ftypes)
     CK_ERROR,
     CK_FAILURE,
     CK_FAILURE,
+    CK_FAILURE,
     CK_ERROR,
     CK_ERROR,
     CK_ERROR,
@@ -126,6 +130,8 @@ START_TEST(test_check_failure_tcnames)
     "Simple Tests",
     "Simple Tests",
     "Simple Tests",
+    "Simple Tests",
+    "Simple Tests",
     "Signal Tests",
     "Signal Tests",
     "Signal Tests",
@@ -156,6 +162,8 @@ START_TEST(test_check_all_msgs)
     "Early exit with return value 1",
     "Passed",
     "This test should fail",
+    "Passed",
+    "This test should fail",
     "Assertion '2==3' failed",
     "Received signal 11",
     "Received signal 8",
@@ -186,6 +194,8 @@ START_TEST(test_check_all_ftypes)
     CK_ERROR,
     CK_PASS,
     CK_FAILURE,
+    CK_PASS,
+    CK_FAILURE,
     CK_FAILURE,
     CK_ERROR,
     CK_ERROR,
index b0d9d173cc8d77937c1dc252a6ebabf0069a9424..b0625769fab30839ce5c542bed03a36a885b1d79 100644 (file)
@@ -35,6 +35,19 @@ START_TEST(test_fail_null_msg)
 }
 END_TEST
 
+START_TEST(test_fail_if_pass)
+{
+  fail_if(1==2, "This test should pass");
+  fail_if(0, "This test should pass");
+}
+END_TEST
+
+START_TEST(test_fail_if_fail)
+{
+  fail_if(1==1, "This test should fail");
+}
+END_TEST
+
 START_TEST(test_segv)
 {
   raise (SIGSEGV);
@@ -124,6 +137,8 @@ Suite *make_sub_suite(void)
   tcase_add_test (tc_simple, test_mark_lno);
   tcase_add_test (tc_simple, test_pass);
   tcase_add_test (tc_simple, test_fail);
+  tcase_add_test (tc_simple, test_fail_if_pass);
+  tcase_add_test (tc_simple, test_fail_if_fail);
   tcase_add_test (tc_simple, test_fail_null_msg);
   tcase_add_test (tc_signal, test_segv);
   tcase_add_test (tc_signal, test_fpe);