From c83a766364b2cb99e7c1afda35eff410b90d32ba Mon Sep 17 00:00:00 2001
From: "mats@mysql.com" <>
Date: Tue, 11 Apr 2006 20:29:34 +0200
Subject: [PATCH] WL#3206 (Add unit tests): More changes according to review
 comments.

---
 unittest/README.txt       | 25 ++++++++++++++-----------
 unittest/mysys/bitmap.t.c | 21 ++++++++-------------
 unittest/unit.pl          |  3 ++-
 3 files changed, 24 insertions(+), 25 deletions(-)

diff --git a/unittest/README.txt b/unittest/README.txt
index 35e930a7951..fd9641665c7 100644
--- a/unittest/README.txt
+++ b/unittest/README.txt
@@ -1,16 +1,21 @@
 
+Unit tests directory structure
+------------------------------
 
-Unit test structure
--------------------
+This is the current structure of the unit tests.  More directories
+will be added over time.
 
-This is the current structure of the unit tests.  All directories does
-not currently exist, and more directories will be added over time.
+mytap                 Source for the MyTAP library
+mysys                 Tests for mysys components
+  bitmap.t.c          Unit test for MY_BITMAP
+  base64.t.c          Unit test for base64 encoding functions
+examples              Example unit tests
+  simple.t.c          Example of a standard TAP unit test
+  skip.t.c            Example where some test points are skipped
+  skip_all.t.c        Example of a test where the entire test is skipped
+  todo.t.c            Example where test contain test points that are TODO
+  no_plan.t.c         Example of a test with no plan (avoid this)
 
-+ mysys                 Tests for mysys components
-+ examples              Example unit tests
-+ sql                   Unit tests for server code
-  + rpl                 Unit tests for replication code
-  + log                 Unit tests for logging
 
 Executing unit tests
 --------------------
@@ -29,5 +34,3 @@ directory and add the following to the Makefile.am in that directory
 
   noinst_PROGRAMS = ... foo.t
   foo_t_c_SOURCES = foo.t.c
-
-
diff --git a/unittest/mysys/bitmap.t.c b/unittest/mysys/bitmap.t.c
index 3df5c29c9ee..d5683baff66 100644
--- a/unittest/mysys/bitmap.t.c
+++ b/unittest/mysys/bitmap.t.c
@@ -24,15 +24,7 @@
 #include <my_global.h>
 #include <my_bitmap.h>
 
-static void bitmap_print(MY_BITMAP *map)
-{
-  uint32 *to= map->bitmap, *end= map->last_word_ptr;
-  while (to <= end)
-  {
-    fprintf(stderr,"0x%x ", *to++);
-  }
-  fprintf(stderr,"\n");    
-}
+#include <string.h>
 
 uint get_rand_bit(uint bitsize)
 {
@@ -85,7 +77,8 @@ bool test_flip_bit(MY_BITMAP *map, uint bitsize)
   return TRUE;
 }
 
-bool test_operators(MY_BITMAP *map, uint bitsize)
+bool test_operators(MY_BITMAP *map __attribute__((unused)),
+                    uint bitsize __attribute__((unused)))
 {
   return FALSE;
 }
@@ -266,7 +259,7 @@ bool test_count_bits_set(MY_BITMAP *map, uint bitsize)
 
 bool test_get_first_bit(MY_BITMAP *map, uint bitsize)
 {
-  uint i, j, test_bit;
+  uint i, test_bit;
   uint no_loops= bitsize > 128 ? 128 : bitsize;
   for (i=0; i < no_loops; i++)
   {
@@ -385,8 +378,10 @@ bool do_test(uint bitsize)
 int main()
 {
   int i;
-  plan(4095);
-  for (i= 1; i < 4096; i++)
+  int const min_size = 1;
+  int const max_size = 1024;
+  plan(max_size - min_size);
+  for (i= min_size; i < max_size; i++)
     ok(do_test(i) == 0, "bitmap size %d", i);
   return exit_status();
 }
diff --git a/unittest/unit.pl b/unittest/unit.pl
index 5c45c15a5b1..cae394cf9b6 100644
--- a/unittest/unit.pl
+++ b/unittest/unit.pl
@@ -100,7 +100,8 @@ sub run_cmd (@) {
         # we are replacing the straps under the feet of Test::Harness,
         # we need to do some basic initializations in the new straps.
         $Test::Harness::Strap = MySQL::Straps->new;
-        $Test::Harness::Strap->{callback} = \&Test::Harness::strap_callback;
+        $Test::Harness::Strap->{callback} = \&Test::Harness::strap_callback
+          if defined &Test::Harness::strap_callback;
 
         runtests @files;
     }
-- 
2.30.9