eina_test_list: Move fail_if out of the hot path
authorDaniel Willmann <d.willmann@samsung.com>
Wed, 20 Mar 2013 18:39:39 +0000 (18:39 +0000)
committerDaniel Willmann <d.willmann@samsung.com>
Wed, 20 Mar 2013 18:42:54 +0000 (18:42 +0000)
fail_if() from libcheck always writes to a file created with tmpfile(),
so it is not a good idea to call it millions of times. This wastes
memory and time, let's use both for something better. :-)

Signed-off-by: Daniel Willmann <d.willmann@samsung.com>
src/tests/eina/eina_test_list.c

index fd11f8996ebdb98b97b5fafc40614e7408205823..1a000da097c306cfafb1460cd34fe3d8a2904dc7 100644 (file)
@@ -416,8 +416,12 @@ START_TEST(eina_test_shuffle)
        j = 0;
        list = eina_list_sort(list, 0, (Eina_Compare_Cb)&uicmp);
        EINA_LIST_FOREACH(list, item, p)
-          fail_if(*p != j++);
-       fail_if(j != SHUFFLE_SZ);
+         {
+            if (*p != j++)
+              fail_if(*p != j++);
+         }
+       if (j != SHUFFLE_SZ)
+         fail_if(j != SHUFFLE_SZ);
     }
 
   d = SHUFFLE_SZ/(float)(SHUFFLE_N);