[openssl-commits] [openssl] master update

Rich Salz rsalz at openssl.org
Mon May 22 12:51:55 UTC 2017


The branch master has been updated
       via  7ac5b84ea7920343f5c69247251bbc84ac259b2b (commit)
      from  3216f9605c19e835900645ad97064b02f27f77be (commit)


- Log -----------------------------------------------------------------
commit 7ac5b84ea7920343f5c69247251bbc84ac259b2b
Author: Pauli <paul.dale at oracle.com>
Date:   Mon May 22 08:22:19 2017 +1000

    Reformat the string output to be more in line with the decisions made in #3465
    
    Don't highlight excess when comparing unequal length strings.
    
    Clean up the NULL / empty string display.
    
    Reviewed-by: Andy Polyakov <appro at openssl.org>
    Reviewed-by: Rich Salz <rsalz at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/3514)

-----------------------------------------------------------------------

Summary of changes:
 test/test_test.c      |  3 ++-
 test/testutil/tests.c | 41 ++++++++++++++++++++---------------------
 2 files changed, 22 insertions(+), 22 deletions(-)

diff --git a/test/test_test.c b/test/test_test.c
index 116dc73..cab580c 100644
--- a/test/test_test.c
+++ b/test/test_test.c
@@ -249,7 +249,8 @@ static int test_string(void)
         | !TEST(0, TEST_str_eq("\1\2\3\4\5", "\1x\3\6\5"))
         | !TEST(0, TEST_str_ne("abc", buf))
         | !TEST(1, TEST_str_ne("abc", NULL))
-        | !TEST(1, TEST_str_ne(NULL, buf)))
+        | !TEST(1, TEST_str_ne(NULL, buf))
+        | !TEST(0, TEST_str_eq("abcdef", "abcdefghijk")))
         goto err;
     return 1;
 
diff --git a/test/testutil/tests.c b/test/testutil/tests.c
index a194b4c..3f75691 100644
--- a/test/testutil/tests.c
+++ b/test/testutil/tests.c
@@ -89,6 +89,14 @@ static void test_fail_message_va(const char *prefix, const char *file,
     test_flush_stderr();
 }
 
+static void test_string_null_empty(const char *m, int indent, char c)
+{
+    if (m == NULL)
+        test_printf_stderr("%*s# % 4s %c NULL\n", indent, "", "", c);
+    else
+        test_printf_stderr("%*s# % 4u:%c ''\n", indent, "", 0u, c);
+}
+
 static void test_fail_string_message(const char *prefix, const char *file,
                                      int line, const char *type,
                                      const char *left, const char *right,
@@ -109,14 +117,11 @@ static void test_fail_string_message(const char *prefix, const char *file,
         l2 = 0;
     if (l1 == 0 && l2 == 0) {
         if ((m1 == NULL) == (m2 == NULL)) {
-            test_printf_stderr("%*s# % 4s   %s\n", indent, "", "",
-                               m1 == NULL ? "NULL" : "''");
+            test_string_null_empty(m1, indent, ' ');
         } else {
             test_diff_header(left, right);
-            test_printf_stderr("%*s# % 4s - %s\n", indent, "", "",
-                               m1 == NULL ? "NULL" : "''");
-            test_printf_stderr("%*s# % 4s + %s\n", indent, "", "",
-                               m2 == NULL ? "NULL" : "''");
+            test_string_null_empty(m1, indent, '-');
+            test_string_null_empty(m2, indent, '+');
         }
         goto fin;
     }
@@ -136,11 +141,10 @@ static void test_fail_string_message(const char *prefix, const char *file,
             for (i = 0; i < n2; i++)
                 b2[i] = isprint(m2[i]) ? m2[i] : '.';
         }
-        diff = n1 != n2;
+        diff = 0;
         i = 0;
         if (n1 > 0 && n2 > 0) {
             const size_t j = n1 < n2 ? n1 : n2;
-            const size_t k = n1 > n2 ? n1 : n2;
 
             for (; i < j; i++)
                 if (m1[i] == m2[i]) {
@@ -149,26 +153,21 @@ static void test_fail_string_message(const char *prefix, const char *file,
                     bdiff[i] = '^';
                     diff = 1;
                 }
-            for (; i < k; i++)
-                bdiff[i] = '^';
             bdiff[i] = '\0';
         }
-        if (!diff) {
-            test_printf_stderr("%*s# % 4u:  '%s'\n", indent, "", cnt, b1);
+        if (n1 == n2 && !diff) {
+            test_printf_stderr("%*s# % 4u:  '%s'\n", indent, "", cnt,
+                               n2 > n1 ? b2 : b1);
         } else {
-            if (cnt == 0 && m1 == NULL)
-                test_printf_stderr("%*s# % 4s - NULL\n", indent, "", "");
-            else if (cnt == 0 && *m1 == '\0')
-                test_printf_stderr("%*s# % 4s - ''\n", indent, "", "");
+            if (cnt == 0 && (m1 == NULL || *m1 == '\0'))
+                test_string_null_empty(m1, indent, '-');
             else if (n1 > 0)
                 test_printf_stderr("%*s# % 4u:- '%s'\n", indent, "", cnt, b1);
-            if (cnt == 0 && m2 == NULL)
-                test_printf_stderr("%*s# % 4s + NULL\n", indent, "", "");
-            else if (cnt == 0 && *m2 == '\0')
-                test_printf_stderr("%*s# % 4s + ''\n", indent, "", "");
+            if (cnt == 0 && (m2 == NULL || *m2 == '\0'))
+               test_string_null_empty(m2, indent, '+');
             else if (n2 > 0)
                 test_printf_stderr("%*s# % 4u:+ '%s'\n", indent, "", cnt, b2);
-            if (i > 0)
+            if (diff && i > 0)
                 test_printf_stderr("%*s# % 4s    %s\n", indent, "", "", bdiff);
         }
         m1 += n1;


More information about the openssl-commits mailing list