[glib: 2/3] tests: Test the function forms of g_bit_*() APIs too




commit cbd48824bd5ecec83f07df201fc43fd266423546
Author: Philip Withnall <pwithnall endlessos org>
Date:   Thu Dec 2 10:01:17 2021 +0000

    tests: Test the function forms of g_bit_*() APIs too
    
    The tests were previously only checking the macro forms. The function
    forms should behave identically, but since it’s easy enough to get
    coverage of them, we might as well.
    
    Signed-off-by: Philip Withnall <pwithnall endlessos org>

 glib/tests/utils.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)
---
diff --git a/glib/tests/utils.c b/glib/tests/utils.c
index da97a92e2..6068cd9be 100644
--- a/glib/tests/utils.c
+++ b/glib/tests/utils.c
@@ -312,10 +312,18 @@ test_basic_bits (void)
     {
       guint naive_bit_storage_i = naive_bit_storage (i);
 
+      /* Test the g_bit_*() implementations against the compiler builtins (if
+       * available), and against a slow-but-correct ‘naive’ implementation.
+       * They should all agree.
+       *
+       * The macro and function versions of the g_bit_*() functions are tested,
+       * hence one call with the function name in brackets (to avoid it being
+       * expanded as a macro). */
 #if TEST_BUILTINS
       g_assert_cmpint (naive_bit_storage_i, ==, builtin_bit_storage (i));
 #endif
       g_assert_cmpint (naive_bit_storage_i, ==, g_bit_storage (i));
+      g_assert_cmpint (naive_bit_storage_i, ==, (g_bit_storage) (i));
 
       for (nth_bit = -3; nth_bit <= 2 + GLIB_SIZEOF_LONG * 8; nth_bit++)
         {
@@ -330,6 +338,8 @@ test_basic_bits (void)
 #endif
           g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
                            g_bit_nth_lsf (i, nth_bit));
+          g_assert_cmpint (naive_bit_nth_lsf_i_nth_bit, ==,
+                           (g_bit_nth_lsf) (i, nth_bit));
 
 #if TEST_BUILTINS
           g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
@@ -337,6 +347,8 @@ test_basic_bits (void)
 #endif
           g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
                            g_bit_nth_msf (i, nth_bit));
+          g_assert_cmpint (naive_bit_nth_msf_i_nth_bit, ==,
+                           (g_bit_nth_msf) (i, nth_bit));
         }
     }
 }


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]