about summary refs log tree commit diff
diff options
context:
space:
mode:
authorH.J. Lu <hjl.tools@gmail.com>2017-05-24 08:41:23 -0700
committerH.J. Lu <hjl.tools@gmail.com>2017-06-08 05:07:17 -0700
commit425daf027bdeed04898097ad814bad06759603c5 (patch)
tree37cf04130459db49dab7c771dc505ac9406a006e
parent5e1122827a9f9751922b25c332f8f0272de60719 (diff)
downloadglibc-425daf027bdeed04898097ad814bad06759603c5.tar.gz
glibc-425daf027bdeed04898097ad814bad06759603c5.tar.xz
glibc-425daf027bdeed04898097ad814bad06759603c5.zip
Add more tests for memchr
This patch adds tests for len == 0 and tests for positions close to the
beginning, which are equivalent to positions close to the end for memchr.

	* string/test-memrchr.c (test_main): Add tests for len == 0
	and tests for positions close to the beginning, which are
	equivalent to positions close to the end for memchr.
-rw-r--r--string/test-memrchr.c17
1 files changed, 17 insertions, 0 deletions
diff --git a/string/test-memrchr.c b/string/test-memrchr.c
index bfc9920dcc..15483f5cb5 100644
--- a/string/test-memrchr.c
+++ b/string/test-memrchr.c
@@ -151,15 +151,32 @@ test_main (void)
 
   for (i = 1; i < 8; ++i)
     {
+      /* Test len == 0.  */
+      do_test (i, i, 0, 0);
+      do_test (i, i, 0, 23);
+
       do_test (0, 16 << i, 2048, 23);
       do_test (i, 64, 256, 23);
       do_test (0, 16 << i, 2048, 0);
       do_test (i, 64, 256, 0);
+
+      do_test (0, i, 256, 23);
+      do_test (0, i, 256, 0);
+      do_test (i, i, 256, 23);
+      do_test (i, i, 256, 0);
+
     }
   for (i = 1; i < 32; ++i)
     {
       do_test (0, i, i + 1, 23);
       do_test (0, i, i + 1, 0);
+      do_test (i, i, i + 1, 23);
+      do_test (i, i, i + 1, 0);
+
+      do_test (0, 1, i + 1, 23);
+      do_test (0, 2, i + 1, 0);
+      do_test (i, 1, i + 1, 23);
+      do_test (i, 2, i + 1, 0);
     }
 
   do_random_tests ();