[openssl-commits] [openssl] master update

Richard Levitte levitte at openssl.org
Thu May 11 08:25:11 UTC 2017


The branch master has been updated
       via  bb616fabd4a82d5daa3ca701abbe30e6d1415341 (commit)
      from  05004f366ecd6b4fcc968739648be9b7fd87df3f (commit)


- Log -----------------------------------------------------------------
commit bb616fabd4a82d5daa3ca701abbe30e6d1415341
Author: Pauli <paul.dale at oracle.com>
Date:   Thu May 11 08:40:12 2017 +1000

    Add a descriptive header to diff output from failed tests.
    
    Reviewed-by: Andy Polyakov <appro at openssl.org>
    Reviewed-by: Richard Levitte <levitte at openssl.org>
    (Merged from https://github.com/openssl/openssl/pull/3433)

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

Summary of changes:
 test/testutil/tests.c | 15 +++++++++++++++
 1 file changed, 15 insertions(+)

diff --git a/test/testutil/tests.c b/test/testutil/tests.c
index 7816df3..9bd6cde 100644
--- a/test/testutil/tests.c
+++ b/test/testutil/tests.c
@@ -40,6 +40,13 @@ static void test_fail_message_prefix(const char *prefix, const char *file,
     test_printf_stderr("\n");
 }
 
+/* Output a diff header */
+static void test_diff_header(const char *left, const char *right)
+{
+    test_printf_stderr("%*s# --- %s\n", subtest_level(), "", left);
+    test_printf_stderr("%*s# +++ %s\n", subtest_level(), "", right);
+}
+
 /*
  * A common routine to output test failure messages.  Generally this should not
  * be called directly, rather it should be called by the following functions.
@@ -107,6 +114,7 @@ static void test_fail_string_message(const char *prefix, const char *file,
             test_printf_stderr("%*s# % 4s   %s\n", indent, "", "",
                                m1 == NULL ? "NULL" : "''");
         } 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, "", "",
@@ -115,6 +123,9 @@ static void test_fail_string_message(const char *prefix, const char *file,
         goto fin;
     }
 
+    if (l1 != l2 || strcmp(m1, m2) != 0)
+        test_diff_header(left, right);
+
     while (l1 > 0 || l2 > 0) {
         n1 = n2 = 0;
         if (l1 > 0) {
@@ -252,6 +263,7 @@ static void test_fail_memory_message(const char *prefix, const char *file,
             test_printf_stderr("%*s# %04s  %s\n", indent, "", "",
                                m1 == NULL ? "NULL" : "empty");
         } else {
+            test_diff_header(left, right);
             test_printf_stderr("%*s# %04s -%s\n", indent, "", "",
                                m1 == NULL ? "NULL" : "empty");
             test_printf_stderr("%*s# %04s +%s\n", indent, "", "",
@@ -260,6 +272,9 @@ static void test_fail_memory_message(const char *prefix, const char *file,
         goto fin;
     }
 
+    if (l1 != l2 || memcmp(m1, m2, l1) != 0)
+        test_diff_header(left, right);
+
     while (l1 > 0 || l2 > 0) {
         n1 = n2 = 0;
         if (l1 > 0) {


More information about the openssl-commits mailing list