diff src/testing.c @ 21297:3ef53d66f30d v8.2.1199

patch 8.2.1199: not all assert functions are fully tested Commit: https://github.com/vim/vim/commit/7177da9dd4d9a521c6141c6fbf7e9a4d6296ab05 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Jul 12 23:09:20 2020 +0200 patch 8.2.1199: not all assert functions are fully tested Problem: Not all assert functions are fully tested. Solution: Test more assert functions.
author Bram Moolenaar <Bram@vim.org>
date Sun, 12 Jul 2020 23:15:05 +0200
parents 6a4806e326dd
children 7449921216bc
line wrap: on
line diff
--- a/src/testing.c
+++ b/src/testing.c
@@ -66,7 +66,7 @@ ga_concat_esc(garray_T *gap, char_u *p, 
 	case CAR: ga_concat(gap, (char_u *)"\\r"); break;
 	case '\\': ga_concat(gap, (char_u *)"\\\\"); break;
 	default:
-		   if (*p < ' ')
+		   if (*p < ' ' || *p == 0x7f)
 		   {
 		       vim_snprintf((char *)buf, NUMBUFLEN, "\\x%02x", *p);
 		       ga_concat(gap, buf);
@@ -270,12 +270,12 @@ assert_match_common(typval_T *argvars, a
     garray_T	ga;
     char_u	buf1[NUMBUFLEN];
     char_u	buf2[NUMBUFLEN];
+    int		called_emsg_before = called_emsg;
     char_u	*pat = tv_get_string_buf_chk(&argvars[0], buf1);
     char_u	*text = tv_get_string_buf_chk(&argvars[1], buf2);
 
-    if (pat == NULL || text == NULL)
-	emsg(_(e_invarg));
-    else if (pattern_match(pat, text, FALSE) != (atype == ASSERT_MATCH))
+    if (called_emsg == called_emsg_before
+		 && pattern_match(pat, text, FALSE) != (atype == ASSERT_MATCH))
     {
 	prepare_assert_error(&ga);
 	fill_assert_error(&ga, &argvars[2], NULL, &argvars[0], &argvars[1],
@@ -379,6 +379,7 @@ assert_equalfile(typval_T *argvars)
 {
     char_u	buf1[NUMBUFLEN];
     char_u	buf2[NUMBUFLEN];
+    int		called_emsg_before = called_emsg;
     char_u	*fname1 = tv_get_string_buf_chk(&argvars[0], buf1);
     char_u	*fname2 = tv_get_string_buf_chk(&argvars[1], buf2);
     garray_T	ga;
@@ -388,7 +389,7 @@ assert_equalfile(typval_T *argvars)
     char	line2[200];
     int		lineidx = 0;
 
-    if (fname1 == NULL || fname2 == NULL)
+    if (called_emsg > called_emsg_before)
 	return 0;
 
     IObuff[0] = NUL;